一、python基础入门4-简单数据类型转换

一. 数据类型

1.1 布尔类型

  • 所有的数据都可以转换为布尔值(bool)
  • 0转换为False,非0全是True。
  • 所有的空值对象全是False。
print(bool(0), bool(1), bool(-1))
print(bool(''), bool([]), bool({}), bool(None))

'''
运行结果:
False True True
False False False False
'''

1.2 整型

  • 布尔值可以转换成整型:False --> 0,True --> 1

  • 浮点型转整型:向小取整

  • 去掉引号是一个整数的字符串可以转整型

print(int(bool(100)))
print(int(0.1))  # --> 0
print(int(.1))  # --> 0
print(int(1.))  # --> 1
print(int('1.0')) #报错:invalid literal for int() with base 10: '1.0'
print(int('1'))  #不报错

1.3 浮点型

  • 整型转浮点型。

  • 去掉引号是数字的字符串可以转成浮点型。

  • 布尔值可以转浮点型—>False:0.0; True:1.0

print(float(1))
print(float('.9'))
print(float('9.'))
print(float('9.9'))

'''
运行结果:
1.0
0.9
9.0
9.9
'''

二. 转换数据类型的函数

函数说明
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 )将一个整数转换为一个二进制字符串

三. 快速体验

需求:input接收用户输入,用户输入“1”,将这个数据1转换成整型。

# 1. 接收用户输入
num = input('请输入您的幸运数字:')

# 2. 打印结果
print(f"您的幸运数字是{num}")


# 3. 检测接收到的用户输入的数据类型 -- str类型
print(type(num))

# 4. 转换数据类型为整型 -- int类型
print(type(int(num)))

四. 实验

# 1. float() -- 转换成浮点型
num1 = 1
print(float(num1))
print(type(float(num1)))
'''
1.0
<class 'float'>
'''


# 2. str() -- 转换成字符串类型
num2 = 10
print(type(str(num2)))
'''
<class 'str'>
'''

# 3. tuple() -- 将一个序列转换成元组
list1 = [10, 20, 30]
print(tuple(list1))
print(type(tuple(list1)))
'''
(10, 20, 30)
<class 'tuple'>
'''


# 4. list() -- 将一个序列转换成列表
t1 = (100, 200, 300)
print(list(t1))
print(type(list(t1)))
'''
[100, 200, 300]
<class 'list'>
'''

# 5. eval() -- 将字符串中的数据转换成Python表达式原本类型
str1 = '10'
str2 = '[1, 2, 3]'
str3 = '(1000, 2000, 3000)'
print(type(eval(str1)))
print(type(eval(str2)))
print(type(eval(str3)))
'''
运行结果:
<class 'int'>
<class 'list'>
<class 'tuple'>
'''

总结

  • 转换数据类型常用的函数
    • int()
    • float()
    • str()
    • list()
    • tuple()
    • eval()