人工智能中文网
  • 主页
  • 线代考研视频
  • 线性代数
  • Python机器学习与算法
  • 大数据与机器学习
  • Python基础入门教程
  • 人工智能中文网
    教程目录
    阅读:

    Python中的基本数据类型

    < 上一篇:第一个Python程序 下一篇:Python的标识符 >
    Python 中的变量是用于存储各种类型的值,这意味着当你创建变量时,需要申请一定量的内存空间。

    基于变量不同的数据类型,编译器会自行分配内存并将数据存储在其中。因此,通过将不同的数据类型分配给变量,可以使用这些变量存储整数、小数以及字符。

    变量赋值

    Python 的变量不需要显示声明来申请不同大小的内存空间,当将数据赋值给变量时,变量的声明会自动发生。给变量赋值时,等号(“=”)的作用就是为了将数据赋值给变量。

    “=” 运算符左侧的操作数表示的是变量的名称,“=” 右侧的操作数表示的是赋值给变量的值。例如:
    counter = 100          # 整数赋值
    miles = 1000.0       # 浮点数赋值
    name = "John"       # 字符赋值
    print counter
    print miles
    print name

    在这段程序中,100、1000.0 和“John”分别为分配给变量 counter、miles 和 name 的值,程序运行的结果为:
    100
    1000.0
    John

    多重分配

    Python 还允许你同时给多个变量同时分配值,例如:
    a = b = c = 1

    此行表示的是用 1 同时分配给了 3 个变量 a、b 和 c,不仅如此,你还可以将多个数据同时分配给多个变量,例如:
    a,b,c = 1,2,"john"

    此行的意思是将整数 1 和 2 分别赋值给 a 和 b,并且将一个“John”的字符串赋值给变量 c。

    Python标准数据类型

    Python程序中,存储在内存中的数据可以有多种类型。例如,一个人的年龄作为一个整数类型存储,他(她)居住的地址可以作为包含字母数字的字符类型存储。

    Python有 5 种标准数据类型,分别是:
    1. Numbers:数值
    2. String:字符串
    3. List:表
    4. Tuple:元组
    5. Dictionary:词典

    Python中的Number

    Number 数据类型用于存储各类数值。数值对象在赋值时被创建,例如:
    var1 = 1
    var2 = 10

    使用 del 语句可以删除单个对象或多个对象,例如:
    del var
    del var_a, var_b
    Python支持 4 种不同的数值类型:
    • int:有符号整数类型;
    • long:长整型,它们可以用八进制和十六进制表示;
    • float:浮点类型;
    • complex:复数;
    Python允许您使用长整型的小写字母l,但建议只使用大写的L以避免与数字1混淆,另外一个复数由一个有序对的实数浮点数x + yj表示,其中x和y是实数,j是虚数单位。

    Python中的String

    Python中的字符串被标识为用引号表示的一组连续的字符。Python允许使用一对单引号或双引号。可以使用操作符 [] 和 [:] 来获取字符串子集,其索引从字符串开头的0开始,在末尾从-1开始。

    加号(+)是字符串连接运算符,星号(*)是重复运算符。例如:
    str = 'Hello World!' print str          # 输出完整的字符串
    print str[0]       # 输出字符串中的第一个字符
    print str[2:5]     # 输出字符串中从第 3 开始到第 5 个字符
    print str[2:]      # 输出字符串从第 3 个字符以后的所有字符
    print str * 2      # 输出字符串 2 次
    print str + "TEST" # 输出字符串 str 和TEST 组合后新的字符串

    这段代码的运行结果为:
    Hello World!
    H
    llo
    llo World!
    Hello World!Hello World!
    Hello World!TEST

    Python中的List

    列表是Python的复合数据类型中功能最多的。列表包含用逗号分隔的项目,并用方括号([])括起来。在某种程度上,列表与C中的数组类似。它们之间的一个区别是属于单个列表中可以具有不同的数据类型。

    存储在列表中的值可以使用操作符([]和[:])进行访问,索引从列表开始的0开始,并以结束-1的方式工作。加号(+)是列表连接运算符,星号(*)是重复运算符。例如:
    list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
    tinylist = [123, 'john'] print list          # 输出完整的列表
    print list[0]       # 输出列表中第一个元素
    print list[1:3]     # 输出从第2个元素到第 3 个元素组成的列表
    print list[2:]      # 输出列表中包含第 3 个元素及之后的所有元素
    print tinylist * 2  # 列表中的元素输出 2 次
    print list + tinylist # 将两个列表组合为 1 个列表

    此段代码的运行结果为:
    ['abcd', 786, 2.23, 'john', 70.2]
    abcd
    [786, 2.23]
    [2.23, 'john', 70.2]
    [123, 'john', 123, 'john']
    ['abcd', 786, 2.23, 'john', 70.2, 123, 'john']

    Python中的Tuple

    元组是另一种与列表相似的数据类型。元组由逗号分隔的许多值组成。但是,与列表不同,元组括在括号内。

    列表和元组之间的主要区别是:列表括在括号([])中,它们的元素和大小可以更改,而元组括在括号()中并且无法更新。元组可以被认为是只读列表。例如:
    tuple = ( 'abcd', 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 # Prints concatenated lists

    这段代码的运行结果如下:
    ('abcd', 786, 2.23, 'john', 70.200000000000003)
    abcd
    (786, 2.23)
    (2.23, 'john', 70.200000000000003)
    (123, 'john', 123, 'john')
    ('abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john')

    下面的代码对元组无效,因为我们试图更新一个不允许的元组。列表中可能出现类似的情况 -
    tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
    list = [ 'abcd', 786 , 2.23, 'john', 70.2  ]
    tuple[2] = 1000   
    list[2] = 1000    

    Python字典

    Python的字典是一种散列表类型。它类似于Perl中的关联数组或散列,是由键值对组成。字典键可以是几乎任何Python类型,但通常是数字或字符串。另一方面,值可以是任意的Python对象。

    字典用大括号({})括起来,可以使用方括号([])分配和访问值。例如:
    dict = {}
    dict['one'] = "This is one"
    dict[2]     = "This is two"
    tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
    print dict['one']      
    print dict[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']
    注意:字典在元素之间没有秩序的概念。说元素是“乱序”是不正确的; 它们只是无序的。
    < 上一篇:第一个Python程序 下一篇:Python的标识符 >