python数据类型分类

  • 不可变类型
    • 数字
    • 字符串
    • 元组
    • 不可变集合
  • 可变类型
    • 列表
    • 字典
    • 可变集合

我们学习的数据类型,只是在学习每一个类型所提供的API,我们所需要的大部分功能,python都已经帮我们封装好了,不需要担心效率的问题。

所有的数据类型所具备的方法都在相应的类里面.

对象是基于类的,也就是说如果我定义一个数据类型是字符串类型的,那么类型字符串就是,而定义的变量就是对象,对象所拥有的功能都是从类里面去拿的。

  1. 数字
    • int(整型)
    • long(长整型,python3.x里面都是int,没有long)
    • float(浮点型)
    • complex(复数)
  2. 布尔型(bool)
  3. 字符串(str)
  4. 列表(list)
  5. 元组(tuple)(不可变列表)
  6. 字典(dict)(无序)
  7. 集合(set)

可变类型与不可变类型

不可变类型(数字,字符串,元组,不可变集合)

不可变类型是不支持修改源数据的,每次对不可变类型的数据进行修改时都是重新创建一个对象然后进行赋值

python中对象的赋值都是进行对象引用(内存地址)传递

后文会讲到 赋值, 以及深浅copy的区别
>>> s = "as"
>>> id(s)
4530159088
>>> s = s + ',as'
>>> id(s)
4530211600
>>> s
'as,as'

可变类型(列表,字典,可变集合)

可变类型支持修改源数据,而不用重新创建新的对象
>>> L = [1,2]
>>> id(L)
4530063480
>>> L[0] = 2
>>> id(L)
4530063480
>>> L
[2, 2]