经过前面六次分享,整个Python 的六种数据类型就算是讲完了,今天在这里给Python 数据类型做一个总结与回顾。
1.六种类型的回顾
1.1 Number(数值):
a. 它支持四种不同的数据类型:整型,长整型,浮点型,复数
b. 数值类型支持各种常见的运算,如:加减乘除求根求平方等
c. 内置了非常多且实用的方法,如:min(),max(),abs(),round(),floor(),ceil()等,详细见第四讲
1.2 String(字符串):
a. 字符串可以使用单引号、双引号、三单引号和三双引号来创建
b. 三引号可以多行定义字符串,它也可以是说明性的注释信息
c. Python 是不支持单字符的,单字符也是作为一个字符串来使用的
d. 字符串支持加,乘,in判断,格式化等常规操作
e. 字符串可以通过下标索引来取值,它还支持运算符操作
f. 字符串内置的常用方法非常多,详情见第五讲,大家也可以通过在IDLE 里面输出dir(str)这条命令来查看
1.3 List(列表)
a. 列表是写在方括号 [] 之间、用逗号分隔开的元素列表
b. 列表是可变的,可以改变列表的内容,允许重复的数据出现
c. 列表中元素的类型可以不相同,列表还支持运算符操作
d. 列表可以通过下标索引来取值
e. 列表内置大量实用的方法,详细见第六讲,大家也可以通过在IDLE 里面输出dir(list)这条命令来查看
1.4 Tuple(元组)
a. 元组与列表类似,只是它是戴了枷锁的列表,不同之处在于元组的元素不能修改
b. 元组的元素写在小括号 () 里,元素之间用逗号隔开,组中的元素类型也可以不相同
c. 元组也可以通过下标索引来取值,元组也支持运算符操作,元组内元素允许重复出现
d. 元组内置大量实用的方法,详细见第七讲,大家也可以通过在IDLE 里面输出dir(tuple)这条命令来查看
1.5 Set(集合)
a. 集合是用大括号 {} 或者 set() 函数创建集合
b. 集合是一个无序不重复元素的序列
c. 集合不能被切片也不能被索引
d. 集合元素可以被添加还有删除
e. 集合支持运算符操作
f. 集合内置了实用的方法,详细见第八讲,大家也可以通过在IDLE 里面输出dir(set)这条命令来查看
1.6 Dict(字典)
a. 字典是由很多键值对组成的集合
b. 字典的索引被称为“键”,它可以是不同的数据类型,且不能重复
c. 字典的索引被称为“键”,键及键所关联的值叫键值对
d. 字典中的键必须是唯一的,且不可变,但值则不必,值可以取任何数据类型,如字符串,数字或元组
e. 字典中的每一个键值(key=>value)对用冒号(:)分割,每个键值对之间用逗号(,)分割,整个字典包括在花括号({})中
f. 字典内置了实用的方法,详细见第九讲,大家也可以通过在IDLE 里面输出dir(dict)这条命令来查看
2.从数据的可变不可变我们可以划分为两种大类
不可变数据:Number(数字)、String(字符串)、Tuple(元组)
可变数据:List(列表)、Dictionary(字典)、Set(集合)
3.从数据存储是否有序来区别
元组:有序,需要存储索引相关信息
列表:有序,需要存储索引相关信息
集合:无序,即无序存储索引相关信息
字典:无序,需要存key与value映射的相关信息
4.不可变和可变我们如何理解
不可变:是指该值类型的变量指向的空间所存储的地址是不变的(我们可以通过id(x)来获取地址,如果这个值不变就表示存储地址没有变),而非内容不变。
可变:是指变量的值可以发生改变,但是当其值改变时并不会改变地址值(也就是id(x)得到的那个值) ,我们可以定义一个list1, 看看它的id(list1) 值是多少?然后再list1.append(xxx),再看看id(list1) 是否有变化来验证一下。
5.不同数据类型之间可以互相转换
a. dict 通过 str() 可以转换为 String 字符串类型
b. number 通过 str() 可以转换为 String 字符串类型
c. tuple(listi)将列表转换为元组
d. list(tuplei)将元组转换为列表
e. set(listi) 将列表转换为集合
f. set(tuplei) 将元组转换为集合
g. set(dicti) 将字典转换为集合(注意只有key)
h. dict(listi) 将二元组列表来转换为字典
i. set(stringi) 将字符串转换为集合
总结:
至此 Python 的数据类型分享完结了,内容量还是比较多的,需要大家对每一个数据类型都应该花时间去学习并实践,由此才能对 Python 的数据类型有深刻的理解与运用。