美文网首页Python
Python3基础数据类型概览

Python3基础数据类型概览

作者: LouisDrink | 来源:发表于2018-07-09 14:41 被阅读0次

    Python3 基础数据类型概览

    每一门语言中,都有相应的基础数据类型来支撑起该门语言的框架,就如同骨骼较之于人一般。基础数据类型,就是已经存在于内存中的系统对象的类型。那么Python3中,有哪些基础数据类型呢?

    Python3中,有六种标准的数据类型:

    • Number(数字)
    • String (字符串)
    • List (列表)
    • Tuple (元组)
    • Set (集合)
    • Dictionary (字典)

    其中,这六种标准数据类型中,可分为可变数据类型和不可变数据类型:

    • 不可变数据类型:Number(数字)、String(字符串)、Tuple(元组)
    • 可变数据类型:List(列表)、Dictionary(字典)、Set(集合)
    可变数据类型和不可变数据类型之间有什么区别呢?

    不可变的数据类型,指向的是内存上的一块分配的固定内存。如变量a = 1,变量b = 1。由于1是Number型,是不可变的数字类型,那么在内存中,会分配一个固定的内存指向的是1,所以这时候的变量a和变量b,其实是指向同一块内存地址。

    可变的数据类型,指向的是内存上的不同的内存。如变量a = [1, 2], 变量b = [1, 2]。由于List型是可变的数据类型,所以即使列表里的元素都一样,如都是[1, 2],系统也会分配不同的内存。所以这边,变量a和变量b分别指向各自的内存地址,而非仍是同一个地址。

    Number(数字)

    Python3支持的数字类型有,intfloatboolcomplex(复数)

    int

    int为长整数类型。与其他接触过的语言不同,如OC中的int型,代表整数类型,在内存中,占4个字节,而long long类型则是代表长整型,在内存中占8个字节。Python3中的int型,就如OC中的long long一样,在内存中占8个字节。
    (占4个字节与占8个字节,决定了数字能覆盖范围的大小)

    float

    float为浮点型。浮点型就类似于我们的小数一般,如3.1415926。

    bool

    bool为布尔类型,为int型的子类。在Python3中,bool类型有两个值,True和False。其中,True == 1, False == 0。

    这边切记,判断bool型的时候,直接用True和False即可,不能用True == 1或False == 0判断,因为:
    True == 1 # True
    False == 0 # True

    complex

    complex更倾向于一个函数,将在后续的文章中详解。

    String(字符串)

    Python3中,字符串都是用(')或双引号(")括起来表示。(单引号与双引号并无区别)
    每个字符串,其实可以看成是一个存放字符的元组,那么字符串中,便可以使用元组中的许多方法,如:截取、索引等等。

    同时使用反斜杠()转义特殊字符。如:
    print('Drink')
    打印为结果为
    Drink

    print('D\rink')
    打印结果为:
    D
    rink

    如果你不想让反斜杠发生转义、可以在字符串前面添加一个r,表示原始字符串:
    print(r'D\rink')
    打印结果为:
    D\rink

    注意:
      1. 反斜杠可以用来转义,使用r可以让反斜杠不发生转义
      1. 字符串可以用+运算符连接在一起,用*运算符重复
      1. Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始
      1. Python中的字符串,是一个不可变数据类型,所以不能改变

    List(列表)

    List(列表)是Python3中使用最频繁的数据类型。如我们的商城网站,其中的类目、商品列表、设置等七七八八的内容,其实都是一个个列表数据。

    List(列表)中的元素类型可以不同,比如可以把Number、String、List、Dict等等数据类型,全部放入一个列表中。(但是原则上不推荐这么做。尽可能保持列表中数据类型的一致性,有利于后期开发的数据处理。

    List(列表),一般用方括号来表示,如list = [1, 2, 3]中,[1, 2, 3]就是一个列表。

    List(列表)中内置了很多方法,后续会用专门的一篇文章来说明。

    注意:
      1. List的元素写在方括号中间,以逗号隔开
      1. 和字符串一样,List可以被索引(index)和切片
      1. List可以使用+操作符进行拼接
      1. List中的元素是可以改变的。

    Tuple(元组)

    Tuple(元组)与List类似,但他们的区别在于,Tuple为不可变数据类型,List为可变数据类型。因此,List中的查询函数,在Tuple中,大多都能用,而List中的增、删、改函数,在Tuple中,全部不可用。

    Tuple(元组),一般用小括号来表示,如tuple = (1, 2, 3)中,(1, 2, 3)就是一个元组。

    注意:
      1. 与字符串一样,元组的元素不能修改
      1. 元组也可以被索引和切片,方法同List一样
      1. 注意构造包含0或1个元素的元组的特殊语法规则
      1. 元组也可以使用+操作符进行拼接

    Set(集合)

    Set(集合)是一个无序不重复元素的序列。基本用于进行成员关系测试和删除重复元素。

    Set(集合)用大括号{}或者set()函数创建。如:set = set{1, 2, 3}。

    特别注意:创建一个空集合必须用set(),而不是{}。因为{}是用来创造一个空字典的。

    Dictionary(字典)

    Dictionary(字典)是Python中另一个非常有用的内置数据类型。列表是有序对象集合,字典是无序对象集合。两者之前的区别在于,字典是用通过键来存取的,而不是通过偏移(索引)存取的。

    字典是一种映射类型,一般用{}来标识。它的无序键值对一边标识如下key(键):value(值)。

    注意
      1. 字典是一种映射类型,它的元素是键值对
      1. 字典的关键字必须为不可变类型,且不能重复
      1. 创建空字典使用{}

    相关文章

      网友评论

        本文标题:Python3基础数据类型概览

        本文链接:https://www.haomeiwen.com/subject/rfxtpftx.html