数据类型转换
自动转换
自动转换是说不需要人工干预,程序会自动转换。
- 程序会朝着更精确的方向进行转换
- 一般是在运算或者进行判断的时候进行转换
手动转换
手动转换是说随着我们开发者的意志进行转换
int 整数型转换 int( )
- int 不用转换
- float 转换之后去掉小数点
- complex 不能进行转换
- bool True变成1 False变成0
- string 只有由纯整数组成的字符串才能进行转换
- 列表、元组、集合、字典都不能进行转换
# 整型
val = 1
print(val,type(val))
val1 = int(val)
print(val1,type(val1))
# 浮点型
val = 1.6
print(val,type(val))
val1 = int(val)
print(val1,type(val1))
# 布尔值
val = False
print(val,type(val))
val1 = int(val)
print(val1,type(val1))
# 字符串
val = "-1"
print(val,type(val))
val1 = int(val)
print(val1,type(val1))
# 复数
#val = 1+1j
#print(val,type(val))
#val1 = int(val)
#print(val1,type(val1))
#列表
# val = [1]
# print(val,type(val))
# val1 = int(val)
# print(val1,type(val1))
#元组
# val = (1,)
# print(val,type(val))
# val1 = int(val)
# print(val1,type(val1))
#集合
# val = {1}
# print(val,type(val))
# val1 = int(val)
# print(val1,type(val1))
#字典
#val = {"a":1}
#print(val,type(val))
#val1 = int(val)
#print(val1,type(val1))
float浮点型转换 float( )
- int 可以转换 转换之后在末尾添加
.0
- float 不需要转换
- complex 不可以转换
- bool 转换之后 True变成1.0 False变成0.0
- string 只能由整数或者浮点数组成的字符串可以转换
- 列表、元组、集合、字典都不能进行转换
# 整型
val = 5
print(val,type(val))
val1 = float(val)
print(val1,type(val1))
# 浮点型
val = 1.23
print(val,type(val))
val1 = float(val)
print(val1,type(val1))
# 布尔值
val = False
print(val,type(val))
val1 = float(val)
print(val1,type(val1))
# 字符串
val = "1.23"
print(val,type(val))
val1 = float(val)
print(val1,type(val1))
# 复数
# val = 5+0j
# print(val,type(val))
# val1 = float(val)
# print(val1,type(val1))
#列表
# val = [1,2]
# print(val,type(val))
# val1 = float(val)
# print(val1,type(val1))
#元组
# val = (1,)
# print(val,type(val))
# val1 = float(val)
# print(val1,type(val1))
#集合
# val = {2,3,4}
# print(val,type(val))
# val1 = float(val)
# print(val1,type(val1))
#字典
#val = {"a":1}
#print(val,type(val))
#val1 = float(val)
#print(val1,type(val1))
complex复数转换 complex( )
- int 转换之后 在整数后边加
0j
- float 转换之后在浮点数后边加
0j
- string 只有由整数和浮点数组成的字符串能进行转换,在后面加
0j
- bool True变成
1+0j
False变 成0j
- 列表、元组、集合、字典都不能进行转换
# 整型
val = 6
print(val,type(val))
val1 = complex(val)
print(val1,type(val1))
# 浮点型
val = 6.6
print(val,type(val))
val1 = complex(val)
print(val1,type(val1))
# 字符串
val = "1.2"
print(val,type(val))
val1 = complex(val)
print(val1,type(val1))
# 布尔值
val = True
print(val, type(val))
val1 = complex(val)
print(val1, type(val1))
val = False
print(val,type(val))
val1 = complex(val) print(val1,type(val1))
bool值的转换 bool( )
- int 只有 0 变成False,其余都是True
- float 只有0.0变成False,其余都是true
- complex 只有
0j(-0j)
变成False,其余都是True - string 空字符串
""
变成False,其余都是True - list 空列表
[]
变成False,其余都是True - tuple 空元组
()
变成False,其余都是True - set 空集合
set()
变成False,其余都是True - dict 空字典
{}
变成False,其余都是True
# 复数
val = 3j
print(val,type(val))
val1 = bool(val)
print(val1,type(val1))
# 空字符串
val = ""
print(val,type(val))
val1 = bool(val)
print(val1,type(val1))
# 空列表
val = []
print(val,type(val))
val1 = bool(val)
print(val1,type(val1))
# 元组
val = (1,)
print(val,type(val))
val1 = bool(val)
print(val1,type(val1))
val = 1, # 也是元组,元组标识逗号
print(val,type(val))
val1 = bool(val)
print(val1,type(val1))
# 空集合
val = set()
print(val,type(val))
val1 = bool(val)
print(val1,type(val1))
list列表的转换 list( )
- int 不可以转换
- float 不可以转换
- complex 不可以转换
- bool 不可以转换
- string 把每个字当作一个元素添加到列表当中
- tuple 直接把元组内的元素放到列表当中,顺序不变
- set 直接把集合里边的元素放到列表当中,顺序随机
- dict 只把字典的键取出来放到列表当中
# 字符串
val = "大金链子小手表,一天三顿小烧烤,青春献给小酒桌,怎么澎湃怎么喝~~~"
print(val,type(val))
val1 = list(val)
print(val1,type(val1))
# 元组
val = (1,2)
print(val,type(val))
val1 = list(val)
print(val1,type(val1))
# 集合
val = {1,2,3,4}
print(val,type(val))
val1 = list(val)
print(val1,type(val1))
# 字典
val = {"a":1,"b":2,"c":3}
print(val,type(val))
val1 = list(val)
print(val1,type(val1))
# val = 1
# print(val,type(val))
# val1 = list(val)
# print(val1,type(val1))
# val = 1.6
# print(val,type(val))
# val1 = list(val)
# print(val1,type(val1))
# val = True
# print(val,type(val))
# val1 = list(val)
# print(val1,type(val1))
数据类型转换
字符串转换 str( )
- 所有类型都可以进行转换
# 整型
val = 1
print(val,type(val))
val1 = str(val)
print(val1,type(val1))
# 浮点型
val = 1.6
print(val,type(val))
val1 = str(val)
print(val1,type(val1))
# 复数
val = 1+1j
print(val,type(val))
val1 = str(val)
print(val1,type(val1))
# 布尔
val = False
print(val,type(val))
val1 = str(val)
print(val1,type(val1))
# 列表
val = [1,2,3]
print(val,type(val))
val1 = str(val)
print(val1,type(val1))
# 元组
val = (1,2,3)
print(val,type(val))
val1 = str(val)
print(val1,type(val1))
# 集合
val = {1,2,3}
print(val,type(val))
val1 = str(val)
print(val1,type(val1))
# 字典
val = {"a":1,"b":2,"c":3}
print(val,type(val))
val1 = str(val)
print(val1,type(val1))
元组转换 tuple( )
- 数字类型都不能进行转换
- 容器类型可以转换,但是注意字典只有键能转换
- 字符串转换时每个字符变成元组中的一个元素
# 字符串
val = "I love Python"
print(val,type(val))
val1 = tuple(val)
print(val1,type(val1))
# 列表
val = [1,2,3,4,3]
print(val,type(val))
val1 = tuple(val)
print(val1,type(val1))
# 集合
val = {1,2,3,4,3}
print(val,type(val))
val1 = tuple(val)
print(val1,type(val1))
# 字典
val = {"a":1,"b":2,3:"c"}
print(val,type(val))
val1 = tuple(val)
print(val1,type(val1))
# val = 12345
# print(val,type(val))
# val1 = tuple(val)
# print(val1,type(val1))
# val = 1.2345
# print(val,type(val))
# val1 = tuple(val)
# print(val1,type(val1))
# val = 1+2j
# print(val,type(val))
# val1 = tuple(val)
# print(val1,type(val1))
集合的转换 set( )
- 数字类型都不能进行转换
- 容器类型可以转换,但是注意字典只有键能转换
- 集合中元素唯一
# 字符串
val = "静如瘫痪,动若癫痫~"
print(val,type(val))
val1 = set(val)
print(val1,type(val1))
# 列表
val = [1,2,3,3,4,5]
print(val,type(val))
val1 = set(val)
print(val1,type(val1))
# 元组
val = (1,2,3)
print(val,type(val))
val1 = set(val)
print(val1,type(val1))
# 字典
val = {"a":1,"b":2,"c":3}
print(val,type(val))
val1 = set(val)
print(val1,type(val1))
字典类型转换 dict()
- 数字类型都不能进行转换
- 字符串类型都不能进行转换
- 其它数据类型要按照指定格式才能进行转换(嵌套)
-
# val = "静如瘫痪,动若癫痫~"
# print(val,type(val))
# val1 = dict(val)
# print(val1,type(val1))
# val = [1,2,3]
# print(val,type(val))
# val1 = dict(val)
# print(val1,type(val1))
#嵌套二级列表,保证二级列表有且只有两个元素
val = [[1,2],[3,4],[5,6]]
print(val,type(val))
val1 = dict(val)
print(val1,type(val1))
val = [(1,2),(3,4),(5,6)]
print(val,type(val))
val1 = dict(val)
print(val1,type(val1))
val = [{1,2},{3,4},{5,6}]
print(val,type(val))
val1 = dict(val)
# 特殊
val = ["白洋","丹丹","念念","张飞"]
print(val,type(val))
val1 = dict(val)
print(val1,type(val1))
# val = (1,2,3)
# print(val,type(val))
# val1 = dict(val)
# print(val1,type(val1))
#嵌套二级元组,保证二级元组有且只有两个元素
val = ([1,2],[3,4],[5,6])
print(val,type(val))
val1 = dict(val)
print(val1,type(val1))
val = ((1,2),(3,4),(5,6))
print(val,type(val))
val1 = dict(val)
print(val1,type(val1))
val = ({1,2},{3,4},{5,6})
print(val,type(val))
val1 = dict(val)
print(val1,type(val1))
# val = {1,2,3}
# print(val,type(val))
# val1 = dict(val)
# print(val1,type(val1))
#嵌套二级集合,保证二级元组有且只有两个元素
val = {(1,2),(3,4),(5,6)}
print(val,type(val))
val1 = dict(val)
print(val1,type(val1))