15 分钟
Python 入门

类型转换

掌握 int()、float()、str()、bool() 转换函数

  • 掌握四种显式类型转换
  • 理解什么是隐式转换
  • 避免常见类型错误

为什么需要转换?

不同类型不能直接运算。比如 input() 返回的是字符串,字符串和数字相加会报错:

示例代码(可运行)

四种转换函数

示例代码(可运行)
⚠️int(3.99) = 3,不是 4!

int() 直接砍掉小数部分,不做四舍五入。要四舍五入用 round(3.99) = 4。

预测输出
print(int("3") + int("4"))
print(str(3) + str(4))

隐式转换

Python 运算时会自动做类型转换:整数和浮点数一起算,结果自动变成浮点数:

示例代码(可运行)

常见错误

示例代码(可运行)
找 Buginput() 返回字符串,字符串不能直接和数字相加,得先用 int() 转一下。
age = input("年龄:") print(age + 1)
填空题填写空白处的代码
s = "3.14" result = ((s) + 2.86) print(result) # 6
选择题

int(3.9) + 1 的结果是?

选择题

bool('') 的值是?

资深工程师加餐

底层原理 · 大厂视角 · 工程经验,点卡片展开

print 把对象交给 sys.stdout 写出,显示时默认调用对象的 __str__;在交互环境直接回显变量走的是 __repr__(更偏「给开发者看的表示」)。sep 改分隔符、end 改结尾、file 可重定向到文件。面试常追问:生产环境为什么用 logging 而不是 print?因为日志有级别、能落盘、可结构化、可统一关闭,print 只适合临时调试。

挑战任务

类型转换

简单+50 XP

把字符串 "3.14" 转成浮点数,加 2.86,再转成整数输出。

类型转换
2 个测试用例

课后作业

计算器输入

中等+20 XP

用 input() 输入两个数字,转 float 后相加输出。

计算器输入
1 个测试用例