数据类型转换
1、数据类型转换的作用
问:input()接收⽤户输⼊的数据都是字符串类型,如果⽤户输⼊1,想得到整型该如何操作?
答:转换数据类型即可,即将字符串类型转换成整型。
2、转换数据类型的函数
函数 |
说明 |
int(x [,base ]) |
将x转换为⼀个整数 |
float(x ) |
将x转换为⼀个浮点数 |
complex(real [,imag ]) |
创建⼀个复数,real为实部,imag为虚部 |
str(x ) |
将对象 x 转换为字符串 |
repr(x ) |
将对象 x 转换为表达式字符串 |
eval(str ) |
⽤来计算在字符串中的有效Python表达式,并返回⼀个对象 |
tuple(s ) |
将序列 s 转换为⼀个元组 |
list(s ) |
将序列 s 转换为⼀个列表 |
chr(x ) |
将⼀个整数转换为⼀个Unicode字符 |
ord(x ) |
将⼀个字符转换为它的ASCII整数值 |
hex(x ) |
将⼀个整数转换为⼀个⼗六进制字符串 |
oct(x ) |
将⼀个整数转换为⼀个⼋进制字符串 |
bin(x ) |
将⼀个整数转换为⼀个⼆进制字符串 |
3、体验
# 1. 接收⽤户输⼊
num = input('请输⼊您的幸运数字:')
# 2. 打印结果
print(f"您的幸运数字是{num}")
# 3. 检测接收到的⽤户输⼊的数据类型 -- str类型
print(type(num))
# 4. 转换数据类型为整型 -- int类型
print(type(int(num)))
4、测试
# 1. float() -- 将数据转换成浮点型
num1 = 1
str1 = '10'
print(type(float(num1))) # float
print(float(num1)) # 1.0
print(float(str1)) # 10.0
# 2. str() -- 将数据转换成字符串型
print(type(str(num1))) # str
# 3. tuple() -- 将一个序列转换成元组
list1 = [10, 20, 30]
print(tuple(list1)) # (10, 20, 30)
# 4. list() -- 将一个序列转换成列表
t1 = (100, 200, 300)
print(list(t1))
# 5. eval() -- 计算在字符串中的有效Python表达式,并返回一个对象
# 把字符串字面的类型转换成它原本的类型
str2 = '1'
str3 = '1.1'
str4 = '(1000, 2000, 3000)'
str5 = '[1000, 2000, 3000]'
print(type(eval(str2))) # <class 'int'>
print(type(eval(str3))) # <class 'float'>
print(type(eval(str4))) # <class 'tuple'>
print(type(eval(str5))) # <class 'list'>