核心定义不同类型的数据不能直接运算,需要手动转换成相同类型,Python提供了4个内置转换函数: | | | int(x)
| 把x转换成整数
| 1. 可以转纯数字字符串、浮点数
2. 转浮点数时会直接舍弃小数部分:int(3.99)结果是3
3. 转带非数字字符的字符串会报错:int("12a")报错
| float(x)
| 把x转换成浮点数
| 支持转数字字符串、整数:float("3.14")结果是3.14,float(10)结果是10.0
| str(x)
| 把x转换成字符串
| 所有类型都可以转成字符串:str(123)结果是"123"
| bool(x)
| 把x转换成布尔值
| 只有以下内容会转成False,其他全部转成True:
0、0.0、""(空字符串)、[](空列表)、None
| 除了手动转换,Python还支持隐式自动转换:比如整数和浮点数运算时,整数会自动转成浮点数,10 + 3.14结果是13.14(浮点数)
- # 1. 常见场景:input输入的字符串转数字
- age_input = input("请输入你的年龄:") # 输入25的话,age_input是字符串"25"
- age = int(age_input) # 转成整数25
- print(age + 1) # 可以正常运算,输出26
- # 2. 转布尔值示例
- print(bool(0)) # 输出False
- print(bool("")) # 输出False
- print(bool("你好")) # 输出True
- print(bool(100)) # 输出True
- # 3. 浮点数转整数
- print(int(3.999)) # 输出3,不会四舍五入
复制代码 配套小练习1. 输入你的身高(单位米,比如1.75)和体重(单位公斤,比如65),转换成数字后计算BMI值:BMI = 体重 / (身高^2) 2. 尝试运行print(bool(None))、print(bool([])),看看返回结果
|