Python 3中有6种标准的数据类型:Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Sets(集合)和Dictionary(字典)。本节将简要介绍这6种数据类型。
Python数字数据类型用于存储数值。Python3支持以下4种不同的数值类型。
(1)整型(Int):也称为整数,包含正整数或负整数,不带小数点。Python 3整型是没有限制大小的,可以当作Long类型使用。
(2)浮点型(float):浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示。
(3)复数型(complex):复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a, b)表示,复数的实部a和虚部b都是浮点型。
(4)布尔型(bool): Python 3中,把True和False定义成关键字,但它们的值还是1和0。
有时需要对数据内置的类型进行转换,数据类型的转换只需要将数据类型作为函数名即可。数字类型转换函数如下。
(1)int(x) 将x转换为一个整数。
(2)float(x) 将x转换为一个浮点数。
(3)complex(x) 将x转换为一个复数,实数部分为x,虚数部分为0。
(4)complex(x, y) 将x和y转换为一个复数,实数部分为x,虚数部分为y。x和y是数字表达式。
下面看几个数字类型的运算。
在Python程序中分别输入下面的数学运算公式:
5+6 20-3*2 (30-2*5)/6
程序运行结果如下图所示。
下面使用变量进行基本的运算。
age=20 day_income=150 total_income=age*day_income
程序运行结果如下图所示。
Python中的字符串用单引号( ' )或双引号( " )括起来。创建字符串很简单,只要为变量分配一个值即可。例如:
str1="Hello Python! "
Python访问字符串,可以使用方括号([])来截取字符串,基本语法如下:
变量[头下标:尾下标]
其中下标最小的索引值以0为开始值,-1为从末尾的开始位置。Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。例如:
print (str1) # 输出字符串 print (str1[0:-1]) # 输出第一个到倒数第二个的所有字符 print (str1[0]) # 输出字符串第一个字符 print (str1[2:5]) # 输出从第三个开始到第五个的字符 print (str1[2:]) # 输出从第三个开始的所有字符 print (str1 * 2) # 输出字符串两次
程序运行结果如下图所示。
Python字符串不能被改变,向一个索引位置赋值,如str1[0] ='h’会产生错误。
List(列表)是Python中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构的实现。列表中元素的类型可以不相同,它支持数字、字符串,甚至可以包含其他列表(嵌套)。
列表是写在方括号([])里、用逗号分隔开的元素列表。和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。
列表截取的语法格式如下:
变量[头下标:尾下标]
索引值的取值和字符串类似,其中下标最小的索引值以0为开始值,以-1为从末尾的开始位置。Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。
例如:
list = [ 'abcd',123 , 4.56, 'Python', 78.9 ] print (list) # 输出完整列表 print (list[0]) # 输出列表第一个元素 print (list[1:3]) # 从第二个元素开始输出到第三个元素 print (list[2:]) # 输出从第三个元素开始的所有元素
程序运行结果如下图所示。
与Python字符串不同的是,列表中的元素是可以改变的。例如:
a = [1, 2, 3, 4, 5, 6] a[0] = 'a' a[2:3]=['b', 'hello']
程序运行结果如下图所示。
此外,列表中的元素还可以被删除。例如:
a[2:4] = []
此时,把原列表中的元素['b', 'hello']删除,余下的内容如下:
['a', 2, 4, 5, 6]
元组(Tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号(())里,元素之间用逗号隔开。元组中的元素类型也可以不相同。元组与字符串类似,可以被索引且下标索引从0开始,-1为从末尾开始的位置。元组也可以进行截取。可以把字符串看作一种特殊的元组。
元组中元素的访问方法和列表类似。例如:
tuple1 =('abcd',123 , 4.56, 'Python', 78.9) print (tuple1) # 输出完整元组 print (tuple1 [0]) # 输出元组第一个元素 print (tuple1 [1:3]) # 从第二个元素开始输出到第三个元素 print (tuple1 [2:]) # 输出从第三个元素开始的所有元素
程序运行结果如下图所示。
集合(Set)是一个无序不重复元素的序列。基本功能是进行成员关系测试和删除重复元素。可以使用大括号( { } )或set() 函数创建集合。注意,创建一个空集合必须用set() 函数而不是大括号( { })。
例如,下面的集合实例:
student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'} print(student) a=set('abcdabc') print(a)
程序运行结果如下图所示。
字典(Dictionary)是Python中另一个非常有用的内置数据类型。前面介绍的列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典中的元素是通过键来存取的,而不是通过索引值存取的。
字典是一种映射类型,字典用“{ }”标识,它是一个无序的键(key) :值(value)对集合。在同一个字典中,键(key)必须是唯一的,但是值则不必唯一,值可以取任何数据类型,但键必须是不可变的,如字符串、数字或元组。
例如,下面两个都是字典的定义:
dict1 = {'Alice': '1234', 'Beth': '5678', 'Cecil': 'abcd'} dict2 = {'abc': 123, 98.6: 37 }
如果要访问字典中的值,则把相应的键放入方括号内即可。例如:
print ("dict1['Alice']: ", dict1[' Alice ']) print ("dict2[98.6]: ", dict2[98.6])
程序运行结果如下图所示。
当需要修改字典时,向字典添加新内容的方法是增加新的键/值对,或者修改或者删除已有键/值对。例如:
dict1['Beth'] = 80; dict1['new']= 'Hello'
程序运行结果如下图所示。