python中的数据类型转换
- 自动转换
在程序的运行或计算的过程中,自动转换
1)运算中转换:
a1=12
a2=12.0
c=a1+a2
2)在程序中自动转换:
str1=''
if str1:
print('ok')
else:
print('no')
-
强制类型转换:通俗的说,就是强制的转化成某种类型
-
强制类型转换----int()
1)整型不用转;
2)浮点型可以转,但是得把小数点之后的数删除;同时不论它的小数位是否>5,整数位都不会进1,只会原样输出;
3)布尔型可以转,但是True转成1;False转成0;
4)复数不能转成整型;
5)字符串只有是**"纯整型**"的数字才可以转,否则报错;
6)列表,元祖,字典,集合不能转成整型; -
强制类型转换----float()
1)整型可以转,但是得在后+.0;
2)浮点型不用转;
3)布尔型可以转,但是True转成1.0;False转成0.0;
4)复数不能转成浮点型;
5)字符串只有是**"数值型**"的数字才可以转,否则报错;
6)列表,元祖,字典,集合不能转成浮点; -
强制类型转换----bool()
1)整型只有0是False,其余都是True;
2)浮点型只有是0.0时才是False,其余都是True;
3)布尔型不用转;
4)复数只有是0j时才是False,其余都是True;
5)字符串只有是**‘’**时才是False,其余都是True;
6)列表,元祖,字典,集合不能转成布尔型; -
强制类型转换—complex()
1)整型可以转,但是得在后+0j;
2)浮点型可以转,但是得在后+0j;
3)布尔型可以转,但是True转成1+0j;False转成0+0j;
4)复数不用转;
5)字符串只有是**"数值型**"的数字才可以转,否则报错;
6)列表,元祖,字典,集合不能转成复数; -
强制类型转换—str()
1)任意类型都可以转成字符型; -
强制类型转换—list()
1)整型、复数、浮点、布尔都不可以转成列表;
2)列表不用转;
3)元祖可以转;
4)集合可以转;
5)字符串可以转;
6)字典只把键转过去,值不转; -
强制类型转换–tuple()
1)整型、复数、浮点、布尔都不可以转成元祖;
2)列表可以转;
3)元祖不用转;
4)集合可以转;
5)字符串可以转;
6)字典只把键转过去,值不转; -
强制类型转换–set()
1)整型、复数、浮点、布尔都不可以转成列表;
2)列表可以转;
3)元祖可以转;
4)集合不用转;
5)字符串可以转;
6)字典只把键转过去,值不转; -
强制类型转换—dict()
1)整型、复数、浮点、布尔都不可以转成列表;
2)列表只有是二维列表,并且二级列表只有两个元素时才可以转;
3)元祖只有是二维元祖,并且二级列表只有两个元素时才可以转;
4)集合只有是二维集合,并且二级列表只有两个元素时才可以转;
5)字符串只有为空才可以转;
6)字典不用转;