转换成布尔值
在python中只有数字0,空字符串”和””,空列表[],空元组(),空字典{},空集合set(),空数据None,空值()是Fslae类型;其他所有的数据都是True类型的
# 使用bool内置类可以将其他数据类型转换成布尔值
# 数字0,空字符串,''/"",空列表[],空元组(),空字典{},空集合set(),空数据None,空值()会被转换成False
print(bool(100)) # 将数字100转换成布尔值是True
print(bool(-1)) # -1转换成为布尔值也是True
print(bool(0)) # False
# 数字里,只有数字0被转换为布尔值是False,其他数字转换为布尔值都是True
print(bool('hello')) # True
print(bool('False')) # True
print(bool('')) # False
print(bool("")) # False
# 字符串里,只有空字符''/""可以转换为False,其他字符串都转换成True
print(bool(None)) # False
print(bool('None')) # True
print(bool([])) # 空列表转换成布尔值是False
print(bool({})) # 空字典转换成布尔值是False
print(bool(())) # 空元组转换成布尔值是False
print(bool()) # 空值转换成布尔值是False
# {}这是空字典,那空集合怎么表示呢?
s = set() # 空集合
print(bool(s)) # 空集合转换成布尔值是False
# 在计算机里,True和False其实就是用数字1和0来保存的
print(True+1) # 等于2
print(False+1) # 等于1
# 隐式类型转换
if 3:
print('3是True所以会打印') # 会打印
if 0:
print('0是False所以不会打印') # 不会打印
转换成字符串
repr()和str()都可以
# 使用str内置类可以将其他类型的数据转换为字符串
a = 34
b = str(a)
print(a, type(a)) # 34 <class 'int'>
print(b, type(b)) # 34 <class 'str'>
转换浮点数
a = '12.34'
b = float(a) # 使用内置float类可以将其他类型数据转换成为float浮点数
print(b) # 12.34
# 如果字符串不是能被转换成为有效的浮点型,会报错
# c = float('hello')
# print(c) #错误的
c = 101
print(float(c)) # 101.0
m = float('12') # 将字符串转换成为浮点数
n = float(12) # 将整型数字转换成为浮点数
print(m, n) # 12.0 12.0
转换整数
小数、字符串和布尔值支持转换成整数
# 使用 int 内置类可以将数据转换成为整数
a = "31"
b = int(a)
print(a) # 31 字符串
print(b) # 31 整数
x = '1a2c'
y = int('1a2c', 16) # 把字符串1a2c当做16进制转换成为整数
print(y) # 6700 整数
m = '12'
n = int(m, 8) # 把字符串的12当做八进制转换成为整数
print(n) # 10
y = '011010'
z = int(y, 2) # 把字符串当做二进制转换成为整数
print(z) # 26
列表、元组、字典和集合之间的转换
# 1.内置类 list tuple set
甲 = [9, 8, 4, 3, 2, 1]
乙 = ('2月','3月','8月','9月','1月')
丙 = {'张三','lisi','森林','火星',998}
# 转换为元组,使用tuple内置类实现
a = tuple(甲)
print(a) # (9, 8, 4, 3, 2, 1)
a = tuple(丙)
print(a) # ('张三', '美国', 'lisi', 998, '火星')
# 转换为集合,使用set内置类实现
b = set(甲)
print(b) # {1, 2, 3, 4, 8, 9}
b = set(乙)
print(b) # {'9月', '1月', '2月', '8月', '3月'}
# 转换为列表,使用list内置类实现
c =list(乙)
print(c) # ['2月', '3月', '8月', '9月', '1月']
c = list(丙)
print(c) # ['张三', 998, 'lisi', '森林', '火星']
# 2.python里有一个比较强大的内置函数eval,可以执行字符串里的代码(把字符串作为代码执行)
a = input('请输入您的用户名:') # a是一个字符串;比如输入的是1+1
a = '1+1'
print(eval(a)) # 2
列表、元组、字典和集合之间的加减乘以及in和not in运算
版权声明:本文为qq_42724611原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。