目录
python从小白到总裁完整教程目录:https://blog.csdn.net/weixin_67859959/article/details/129328397?spm=1001.2014.3001.5502
❤ int
其他类型转换成int类型,只有float、str、bytes才能转换成int类型
1. float → int
会去掉个位数以后的数值,仅保留整数部分。
print(int(-12.34))
输出:
-12
2. str → int
如果字符串中有数字(0-9)和正负号(+/-)以外的字符,就会报错。
print(int('10086'))
print(int('-122'))
print(int('+321'))
输出:
10086
-122
321
3. bytes → int
bytes 中除数字(0-9)和正负号(+/-)以外的,就会报错。
print(int(b'10086'))
print(int(b'-122'))
print(int(b'+321'))
输出:
10086
-122
321
❤ float
其他类型转换成float类型,只有int、str、bytes才能转换成int类型
1. int → float
int 转换为 float 时,会自动给添加一位小数。
print(float(-2023))
输出:
-2023.0
2. str → float
如果字符串含有正负号(+/-)、数字(0-9)和小数点(.)以外的字符,则不支持转换。
print(float('-2023'))
print(float('-2023.2024'))
输出:
-2023.0
-2023.2024
3. bytes → float
如果 bytes 中含有正负号(+/-)、数字(0-9)和小数点(.)以外的字符,则不支持转换
print(float(b'-2023'))
print(float(b'-2023.2024'))
输出:
-2023.0
-2023.2024
❤ complex
其他类型转换成complex类型,只有int、str、float才能转换成complex类型
1. int → complex
int 转换 complex 时,会自动添加虚数部分并以0j
表示
print(complex(12))
输出:
(12+0j)
2. float → complex
float 转换 complex 时,会自动添加虚数部分并以0j
表示
print(complex(-20.23))
输出:
(-20.23+0j)
3. str → complex
str 转换 complex 时,如果能转换成 int 或 float,则会转换后再转为 complex。如果字符串完全符合 complex 表达式规则,也可以转换为 complex 类型值。
print(complex('-20.23'))
# (-20.23+0j)
print(complex('-20.2'))
# (-20.2+0j)
print(complex('-20'))
# (-20+0j)
print(complex('-20+1j'))
# (-20+1j)
# complex(b'20') # 报错,不支持 bytes 转换为 complex
# complex('20 + 2j') # 报错,加号两侧不可有空格
❤ 列表、字符串、字典转换
1. list
1. str → list
复习一下,前面讲过
s5="西瓜-香蕉-苹果-草莓-菠萝-荔枝"
s01 = s5.split('-')
print(s01)
s02 = s5.split(',')
print(s02)
输出:
['西瓜', '香蕉', '苹果', '草莓', '菠萝', '荔枝']
['西瓜-香蕉-苹果-草莓-菠萝-荔枝']
2. dict → list
s5= {'a': 1}
print(list(s5))
输出:
['a']
这个不常用
2. str
1. list → str
str02 =''.join(['d', 'a', 'c'])
print(str02)
输出:
dac
注意:join前面的字符串
2. dict → str
dict02 = {'name':'rose', 'sex':'女', 'age':20}
str01 = '%(name)s%(sex)s%(age)d' % dict02
print('转换后字符串数据:', str01)
输出:
转换后字符串数据: rose女20
1. dict
1. list → dict
list01 = [
['name', 'rose'],['sex', '女'],['age', 20]
]
print(list01)
dict04 = dict(list01)
print(dict04)
输出:
[['name', 'rose'], ['sex', '女'], ['age', 20]]
{'name': 'rose', 'sex': '女', 'age': 20}
2. str → dict
str02 = "{'name':'rose', 'sex':'女', 'age':20}"
dict03 = eval(str02)
print(str02, type(str02))
print(dict03, type(dict03))
输出:
{'name':'rose', 'sex':'女', 'age':20} <class 'str'>
{'name': 'rose', 'sex': '女', 'age': 20} <class 'dict'>
转换关键词如下图: