Python 数据类型

作者: ferrint | 来源:发表于2017-03-14 15:09 被阅读16次

    关键词:变量、数据类型

    Python 中的变量赋值不需要类型声明。

    >>>a = 10
    >>>print(a)
    >>>print(type(a))   # 内置函数type(), 用以查询变量的类型。
    
    # 输出结果
    # 10
    # <class 'int'>
    

    如果你想让a存储不同的数据,你不需要删除原有变量就可以直接赋值。

    >>>a = 1.3
    >>>print(a,type(a))  # print后跟多个输出,以逗号分隔。
    # 输出结果
    # 1.3 <class 'float'>
    

    Python允许你同时为多个变量赋值

    a = b = c = 1
    a, b, c = 1, 2, "john"
    print a,b,c
    

    Python数据类型

    标准数据类型

    • Numbers(数字)
    • String(字符串)
    • List(列表)
    • Tuple(元组)
    • Dictionary(字典)

    ** Numbers(数字)**

    • int(有符号整型)
    • long(长整型[也可以代表八进制和十六进制])
    • float(浮点型)
    • complex(复数)

    String(字符串)

    str = 'Hello World!'
     
    print str           # 输出完整字符串
    print str[0]        # 输出字符串中的第一个字符
    print str[2:5]      # 输出字符串中第三个至第五个之间的字符串
    print str[2:]       # 输出从第三个字符开始的字符串
    print str * 2       # 输出字符串两次
    print str + "TEST"  # 输出连接的字符串
    
    # 输出结果:
    # Hello World!
    # H
    # llo
    # llo World!
    # Hello World!Hello World!
    # Hello World!TEST
    

    字符串是一种特殊的元组,因此可以执行元组的相关操作。

    List(列表)

    list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]
    tinylist = [123, 'john']
     
    print list               # 输出完整列表
    print list[0]            # 输出列表的第一个元素
    print list[1:3]          # 输出第二个至第三个的元素 
    print list[2:]           # 输出从第三个开始至列表末尾的所有元素
    print tinylist * 2       # 输出列表两次
    print list + tinylist    # 打印组合的列表
    
    # 输出结果:
    # ['runoob', 786, 2.23, 'john', 70.2]
    # runoob
    # [786, 2.23]
    # [2.23, 'john', 70.2]
    # [123, 'john', 123, 'john']
    # ['runoob', 786, 2.23, 'john', 70.2, 123, 'john']
    

    Tuple(元组)

    tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
    tinytuple = (123, 'john')
     
    print tuple               # 输出完整元组
    print tuple[0]            # 输出元组的第一个元素
    print tuple[1:3]          # 输出第二个至第三个的元素 
    print tuple[2:]           # 输出从第三个开始至列表末尾的所有元素
    print tinytuple * 2       # 输出元组两次
    print tuple + tinytuple   # 打印组合的元组
    
    # 输出结果
    # ('runoob', 786, 2.23, 'john', 70.2)
    # runoob
    # (786, 2.23)
    # (2.23, 'john', 70.2)
    # (123, 'john', 123, 'john')
    # ('runoob', 786, 2.23, 'john', 70.2, 123, 'john')
    

    区别: 元组是不允许更新的。而列表是允许更新

    Dictionary(字典)

    dict = {}
    dict['one'] = "This is one"
    dict[2] = "This is two"
    tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
     
    print dict['one']          # 输出键为'one' 的值
    print dict[2]              # 输出键为 2 的值
    print tinydict             # 输出完整的字典
    print tinydict.keys()      # 输出所有键
    print tinydict.values()    # 输出所有值
    
    # 输出结果为:
    # This is one
    # This is two
    # {'dept': 'sales', 'code': 6734, 'name': 'john'}
    # ['dept', 'code', 'name']
    # ['sales', 6734, 'john']
    
    序列的概念
    • sequence(序列)是一组有顺序的元素的集合
    • 序列可以包含一个或多个元素,也可以没有任何元素。
    • 我们之前所说的基本数据类型,都可以作为序列的元素。元素还可以对象。

    序列有两种:tuple(定值表; 也有翻译为元组) 和 list (表)
    tuple和list的主要区别在于,一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更。

    >>>s1 = (2, 1.3, 'love', 5.6, 9, 12, False)  # s1是一个tuple
    >>>s2 = [True, 5, 'smile']                   # s2是一个list
    >>>print(s1,type(s1))
    >>>print(s2,type(s2))
    

    数据类型转换

    |函数|描述|
    |--------------------|
    | int(x [,base]) |将x转换为一个整数
    | long(x [,base] ) |将x转换为一个长整数
    | float(x) |将x转换到一个浮点数
    | complex(real [,imag]) |创建一个复数
    | str(x) | 将对象 x 转换为字符串
    | repr(x) | 将对象 x 转换为表达式字符串
    | eval(str) | 用来计算在字符串中的有效Python表达式,并返回一个对象
    | tuple(s) | 将序列 s 转换为一个元组
    | list(s) | 将序列 s 转换为一个列表
    | set(s) | 转换为可变集合
    | dict(d) | 创建一个字典。d 必须是一个序列 (key,value)元组。

    相关文章

      网友评论

        本文标题:Python 数据类型

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