Python3 中有六个标准的数据类型:
Number(数字)
String(字符串)
List(列表)
Tuple(元组)
Set(集合)
Dictionary(字典)
Python3 的六个标准数据类型中:
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组)
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)
而在python3中,我们说的数据结构即我们的List(列表)Tuple(元组)Set(集合)Dictionary(字典)四类。
Number(数字)
Python3 支持 int、float、bool、complex(复数)。
布尔值:Python3 中布尔值使用常量 True 和 False 来表示。在数值上下文环境中,True 被当作 1,False 被当作 0,其他类型值转换 bool 值时除了 ''、""、''''''、""""""、0、()、[]、{}、None、0.0、0L、0.0+0.0j、False 为 False 外,其他都为 True 。
复数:我们把形如z=a+bi(a,b均为实数)的数称为复数,其中a称为实部,b称为虚部,i称为虚数单位。当z的虚部等于零时,常称z为实数;当z的虚部不等于零时,实部等于零时,常称z为纯虚数。
举个栗子:
print(1) #输出整型int,输出结果1
print(1.22) #输出浮点型float,输出结果1.22
print(True+2) #输出布尔值bool+2后的数值 ,输出结果3
print(3e+26J) #输出复数complex ,输出结果3e+26j
String(字符串)
python3字符串是由数字、字母、下划线组成的一串字符。它是编程语言中表示文本的数据类型。
python3字符串有两种取值顺序 从左到右索引默认0开始,最大范围是字符串长度减1 。从右到左索引默认-1开始,最大范围是字符串开头。
如果要实现截取字符串的话,使用 [头下标:尾下标] 来截取,截取的字符串包含头下标的字符,但不包含尾下标的字符。其中下标是从 0 开始算起,可以是正数或负数,下标可以为空表示取到头或尾。
加号(+)是字符串连接运算符,星号(*)是重复操作,星号后的数字是重复次数。
举个栗子:
str = 'Hello World!'
print(str) #输出完整字符串 -- Hello World!
print(str[0]) #输出字符串第一个字符 -- H
print(str[2:5]) #输出字符串中第三个至第六个之间的字符串 -- llo
print(str[2:]) #输出从第三个字符开始的字符串 -- llo World!
print(str*2) #输出字符串两次 -- Hello World!Hello World!
print(str + "HAHAHA") #输出连接的字符串 -- Hello World!HAHAHA
List(列表)
列表是python3最通用的复合数据类型,它可以完成大多数集合类的数据结构的实现。使用[]标识,支持字符,数字,字符串,甚至还可以包含列表(即嵌套)
列表中值的切割也可以用到变量 [头下标:尾下标] ,从左到右索引默认 0 开始,从右到左索引默认 -1 开始,下标可以为空表示取到头或尾。
举个栗子:
list = [9.9, 'rose', 89]
tinylist = [1, 'rose']
print(list) #输出完整列表 -- [9.9, 'rose', 89]
print(list[0]) #输出列表第一个元素 -- 9.9
print(list[1:3]) #输出从第二个开始到第三个元素 -- ['rose', 89]
print(list[2:]) #输出从第三个开始至列表末尾的所有元素 -- [89]
print(tinylist*2) #输出列表两次 -- [1, 'rose', 1, 'rose']
print(list + tinylist) #打印组合的列表 -- [9.9, 'rose', 89, 1, 'rose']
Tuple(元组)
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。
元组中的元素类型也可以不相同
举个栗子:
tuple = ( 'a', 7 , 0.2 )
tinytuple = (1, 'b')
print (tuple) # 输出完整元组 -- ( 'a', 7 , 0.2 )
print (tuple[0]) # 输出元组的第一个元素 -- a
print (tuple[1:3]) # 输出从第二个元素开始到第三个元素 -- (7, 0.2)
print (tuple[2:]) # 输出从第三个元素开始的所有元素 -- (0.2)
print (tinytuple * 2) # 输出两次元组 -- (1, 'b', 1, 'b')
print (tuple + tinytuple) # 连接元组 -- ('a', 7, 0.2, 1, 'b')
#注意构造包含 0 或 1 个元素的元组的特殊语法规则:
tup1 = () # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号
Set(集合)
集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。基本功能是进行成员关系测试和删除重复元素。可以使用大括号 { } 或者 set() 函数创建集合,但创建一个空集合必须用 set() 。
举个栗子:
student = {'a', 'b', 'a', 'c', 'c'}
print(student) # 输出集合,重复的元素被自动去掉,结果为 --- {‘a’, 'b', 'c'}
# set可以进行集合运算
a = set('abcdeab')
b = set('bce')
print(a) #输出a集合,结果为 -- {‘a’, 'b', 'c', 'd', 'e'}
print(a - b) # 输出a 和 b 的差集 -- {'a', 'd'}
print(a | b) # 输出a 和 b 的并集 -- {‘a’, 'b', 'c', 'd', 'e'}
print(a & b) # 输出a 和 b 的交集 -- { 'b', 'c', 'e'}
print(a ^ b) # 输出a 和 b 中不同时存在的元素 -- {‘a’, 'd'}
Dictionary(字典)
字典是一种映射类型,用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。键(key)必须使用不可变类型。在同一个字典中,键(key)必须是唯一的。
举个栗子:
dict = {}
dict['one'] = "人生苦短"
dict[2] = "我用python"
tinydict = {'name': 'cat' , 'age': 2}
print (dict['one']) # 输出键为 'one' 的值 -- 人生苦短
print (dict[2]) # 输出键为 2 的值 -- 我用python
print (tinydict) # 输出完整的字典 -- {'name': 'cat' , 'age': 2}
print (tinydict.keys()) # 输出所有键 -- dict_keys(['name', 'age'])
print (tinydict.values()) # 输出所有值 -- dict_values(['cat', 2])
网友评论