1. string 字符串类型
- 字符串是通过单引号、双引号或三引号进行定义的;
- 单、双引号定义字符串不能随意换行,需要在换行时指明换行符;
- 字符串中的引号可以互相嵌套,但不能嵌套自己(例如不能再单引号中签到单引号,除非转义);
- 字符串中可以使用转义符,如:\r \n \t ...
- 如果不想在字符串中实现转义字符,可以在字符定义前加“r”,如:love = r'\nihao';
2. Number 数字类型
- int 整型
- float 浮点类型
- complex 复数(如:varn = 5+5j)
- bool 布尔类型(True,False)
3. list 列表类型
- 列表用来表示一系列数据,列表中存储的每一组数据称为元素;
- 列表中存储的数据可以是任意类型的,并且可以存储列表(被称为二级列表(二维列表)或多级列表(多维列表));
- 列表是通过中括号“[]”进行定义的,每个数据间使用逗号“,”进行分隔;
- 列表中的数据可以通过下标的方式进行获取,正向从“0”开始,逆向从“-1”开始;
- 列表中元素的值是可变的;
4. tuple 元组类型
- 元组与列表非常相似,都是用于存储多个数据时使用;
- 元组是通过小括号“()”进行定义的,每个数据间使用逗号“,”进行分隔;
- 元组与列表的区别是,元组中元素的值是不可变的;
5. dict 字典类型
- 字典也是用于存储一组或多组数据是使用;
- 字典是通过大括号“{}”进行定义的;
- 字典是以键值对的存储方式进行存储的,键和值之间使用冒号“:”进行分隔,多组键值对之间使用逗号“,”进行分隔;
- 键必须是字符串或数据类型,值可以是任意类型;
- 键名不能重复,值可以重复;
6. set 集合类型
- 集合类型是一个无序且元素不重复的集合;
- 集合使用大括号“{}”,或者set()方法进行定义;
- 如果需要定义一个空集合时,只能使用set()方法,因为使用大括号时定义的是空字典;
- 集合主要用于运算,交集“&”,差集“-”,并集“|”,对称集合“^”;
7. 数据类型总结
- 可变数据类型:字符串、数字、列表、字典、集合;
- 不可变数据类型:元组;
- 容器类型数据:字符串、列表、元组、集合、字典;
- 非容器类型数据:所有数字类型;
8. 数据类型转换
什么是数据类型转换?
把一个数据类型转换为另一个数据类型为什么需要数据类型转换?
因为不同的数据类型之间无法运算数据类型转换的形式?
· 自动类型转换 · 强制类型转换自动类型转换
- 不同的数字类型在运算时会进行自动类型转换;
- 结果为更高精度类型(bool ==> int ==> float ==> complex);
- bool类型中True转换为数字“1”,False转换为数字“0”
强制类型转换
- str()
可以把所有数据类型转换为str类型;
- int()
· 可将纯数字的str类型转换为int类型; · 可将float类型直接去除小数点后转为int类型; · 如果要得到四舍五入的整数,使用round()函数;
- float()
· 可将纯数字或带小数点的数字str类型转换为float类型; · 可将bool和int转换为float类型;
- bool()
· 可转换为False值的有:'', 0, 0.0, [], {}, (), set(); · 除以上情况,均转换为True值;
- list()
· 只有容器类型可以转换为list类型,数字类型为非容器类型,故不可转换; · str类型转换为list类型时,会把字符串中每一个字符转换为一个列表中的元素; · tuple类型与set类型都可直接转换为list类型; · dict类型转换为list类型时,只保留字典中的键值key;
- tuple()
· 只有容器类型可以转换为tuple类型,数字类型为非容器类型,故不可转换; · str类型转换为tuple类型时,会把字符串中每一个字符转换为一个元组中的元素; · list类型与set类型都可直接转换为tuple类型; · dict类型转换为tuple类型时,只保留字典中的键值key;
- set()
· 只有容器类型可以转换为set类型,数字类型为非容器类型,故不可转换; · str类型转换为set类型时,会把字符串中每一个字符转换为一个集合中的元素; · list类型与tuple类型都可直接转换为set类型; · dict类型转换为set类型时,只保留字典中的键值key; · set类型是无序的,故转换结果也是无序的;
- dict()
· 数字类型为非容器类型,故不可转换; · str类型与set类型也不可以转换为dict类型; · list类型转换为dict类型时,要求是一个二级列表,并且每个二级元素只能有两个值; · tuple类型转换为dict类型时,要求是一个二级元组,并且每个二级元素只能有两个值;
© 著作权归作者所有
举报
发表评论
0/200