Python的数据类型
Python的数据类型
1. 数据类型之整型 int
1.1 整数
整数就是除小数以外的其他数字,包括正整数、0、负整数
整数就是为了记录比如班级人数,人的年龄,统计物体的个数等
1.2 整数在python中的表达
# 直接写整数就是整数
2. 数据类型之浮点型 float
2.1 浮点数
浮点数就是除整数以外的其他数字,包括正浮点数、负浮点数
浮点数就是为了记录比如人的身高、体重、股票的跌涨幅等
2.2 浮点数在python中表达
# 直接写浮点数就是浮点数
3. 数据类型之字符串 str
3.1 字符串
字符串就是一个有序的字符序列
主要用来记录描述性性质的数据 eg:姓名、邮箱、地址
3.2 字符串的定义
# 为什么定义字符串需要这么多种方式?
目的是防止字符串内部还需要使用引号 ,防止引起冲突
3.3 字符串索引
1 str = 'Runoob' 2 3 print (str) # 输出字符串 4 print (str[0:-1]) # 输出第一个到倒数第二个的所有字符 5 print (str[0]) # 输出字符串第一个字符 6 print (str[2:5]) # 输出从第三个开始到第五个的字符 7 print (str[2:]) # 输出从第三个开始的后的所有字符 8 print (str * 2) # 输出字符串两次,也可以写成 print (2 * str) 9 print (str + "TEST") # 连接字符串
4. 数据类型之列表 list
4.1 列表的作用、特征
能够存储多个数据并且可以方便的取出任意个数
特征:中括号括起来,内部可以存放多个元素,元素与元素之间逗号隔开,元素可以是任意数据类型
4.2 列表的索引值
索引值从0开始,从末尾开始时为-1
+ 是列表链接 *是重复操作
1 list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ] 2 tinylist = [123, 'runoob'] 3 4 print (list) # 输出完整列表 5 print (list[0]) # 输出列表第一个元素 6 print (list[1:3]) # 从第二个开始输出到第三个元素 7 print (list[2:]) # 输出从第三个元素开始的所有元素 8 print (tinylist * 2) # 输出两次列表 9 print (list + tinylist) # 连接列表
5. 数据类型之字典 dict
5.1 字典的作用,定义
作用: 能够更加准确的储存数据
列表是有序对象合集,字典是无序对象合集。两者的区别是:字典中的元素使用键来存取的,而不是通过偏移存取的
字典是一种映射类型,字典用{}标识,他是无序的Key(键):Value(值)的集合
Key(键)必须使用不可变类型
在同一个字典里Key必须是唯一的
1 tinydict = {'name': 'runoob','code':1, 'site': 'www.runoob.com'} 2 3 4 print (dict['one']) # 输出键为 'one' 的值 5 print (dict[2]) # 输出键为 2 的值 6 print (tinydict) # 输出完整的字典 7 print (tinydict.keys()) # 输出所有键 8 print (tinydict.values()) # 输出所有值
5.2 字典注意点
1. 字典是映射类型,他的元素是键值对 Key(键):Value(值)
2. 字典的关键字必须是不可变类型,且不能重复
3. 创建空字典用{}
6. 数据类型之布尔值 bool
6.1 布尔值的定义,作用
布尔值只有两种状态 True 正确的 False 错误的
用于判断事物的对错,是否可行
6.2 布尔值的补充、扩展
6.2.1 布尔值的命名
针对布尔值的变量名一般采用is开头
6.2.2 布尔值小知识
在python中所有数据类型都可以转换成布尔值
布尔值False的有:0,None,[],{}....
其他的都视为True
7. 数据类型之元组 tuple
7.1 元组的定义
元组与列表类似,不同之处在于元组的元素不能修改,元组的元素写在()之中,用,隔开
元组中的数据类型也可以各不相同
1 tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2 ) 2 tinytuple = (123, 'runoob') 3 4 print (tuple) # 输出完整元组 5 print (tuple[0]) # 输出元组的第一个元素 6 print (tuple[1:3]) # 输出从第二个元素开始到第三个元素 7 print (tuple[2:]) # 输出从第三个元素开始的所有元素 8 print (tinytuple * 2) # 输出两次元组 9 print (tuple + tinytuple) # 连接元组
7.2 元组的索引
元组与字符串类似,可以被索引且下标索引从0开始,-1为从末尾开始的位置,也可以进行截取
可以把字符串看成特殊的元组
tup = (1, 2, 3, 4, 5, 6) print(tup[0]) 1 print(tup[1:5]) (2, 3, 4, 5) tup[0] = 11 # 修改元组元素的操作是非法的 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'tuple' object does not support item assignment
# 元组虽然不可以更改,但是他可以包含可更改的元素比如说列表
7.3 元组的额外语法及注意点
7.3.1 额外语法规则
1 tup1 = () # 空元组 2 tup2 = (20,) # 一个元素,需要在元素后添加逗号
7.3.2 注意
1. 与字符串一样,元组的元素不可修改
2. 元组也可以被索引、切片
3. 注意构造0和1个元素的元组的特殊语法
4. 元组也可以使用+操作符进行拼接
8. 数据类型之集合 set
8.1 集合
集合是由一个或者多个形态各异的大小整体组成的,构成集合的事物或对象被称为元素或者成员
基本功能是进行成员关系测试和删除重复元素
使用{}或者set()函数创建集合
*注意 创建空字典必须使用set(),而不能使用{},{}会创建一个空字典
parame = {value01,value02,...}
或者
set(value)
8.2 实例
1 sites = {'Google', 'Taobao', 'Runoob', 'Facebook', 'Zhihu', 'Baidu'} 2 3 print(sites) # 输出集合,重复的元素被自动去掉 4 5 # 成员测试 6 if 'Runoob' in sites : 7 print('Runoob 在集合中') 8 else : 9 print('Runoob 不在集合中') 10 11 12 # set可以进行集合运算 13 a = set('abracadabra') 14 b = set('alacazam') 15 16 print(a) 17 18 print(a - b) # a 和 b 的差集 19 20 print(a | b) # a 和 b 的并集 21 22 print(a & b) # a 和 b 的交集 23 24 print(a ^ b) # a 和 b 中不同时存在的元素