在Python里,把文字和变量拼在一起,是一个非常高频的操作。
比如你想输出“我的名字是XX,今年X岁”——名字和年龄是变量,每次运行可能都不一样。
以前我们用的是加号拼接。后来有了一个更好用的方法,叫f-string。
这节课,就来把这个工具讲透。
一、没有f-string之前,我们怎么写?
先看一段最常见的代码:
name = ”xianxian”age = 9print(”我叫” + name + ”,我” + str(age) + ”岁了”)
输出:我叫xianxian,我9岁了
这段代码能跑,没毛病。但它有几个明显的“痛点”:
age是整数,不能直接和字符串相加,得先str(age)- 如果变量再多几个(城市、学校、爱好……),整行代码会变得非常长,非常难读
这就是加号拼接的真实体验——能用,但不好用。
二、f-string来了,写法简单了
看下面这段代码:
name = ”xianxian”age = 9print(f”我叫{name},我{age}岁了”)
输出一模一样:我叫xianxian,我9岁了
但写法清爽了很多。
f-string的语法只有两个要点:
| |
|---|
加一个f | 写在字符串引号前面,告诉Python“我要用f-string” |
用{}包变量 | |
不需要加号,不需要str()转换,代码少写了一半,读起来也更清楚。
三、更简洁的写法
你甚至不需要先把字符串存到变量里,可以直接放进print():
print(f”我叫{name},我{age}岁了”)
如果只有一行输出,这种写法是最省事的。
四、f-string里的花括号还能做什么?
这里有几个进阶用法,孩子掌握基础后可以慢慢了解。
1. 直接做简单的计算
a = 3b = 5print(f”{a} + {b} = {a + b}”)
输出:3 + 5 = 8
花括号里可以写简单的表达式,程序会先算出结果再输出。
2. 调整小数位数
pi = 3.1415926print(f”圆周率约等于{pi:.2f}”)
输出:圆周率约等于3.14
: .2f的意思是“保留两位小数”。这个在算钱、算成绩的时候很实用。
五、新手最容易犯的三个错误
错误1:忘了在字符串前面加f
name = ”xianxian”print(”我叫{name}”)# ❌ 忘了f
输出是:我叫{name}(大括号和变量名被当成了普通文字)
错误2:把f-string的括号和print的括号搞混
print(f”我叫(name)”)# ❌ 用了圆括号print(f”我叫{name}”)# ✅ 正确
记住:变量外面是花括号{},不是圆括号。
错误3:在中英文输入法之间反复横跳
写代码时,英文字母、括号、引号、大括号,都必须在英文输入法状态下敲。中文状态下敲出来的符号,Python不认识。
解决方案:写代码时保持英文输入法,需要输入中文时再临时切换。
六、加号拼接和f-string对比
| | |
|---|
| "我叫" + name + str(age) | f"我叫{name}{age}" |
| | |
| | |
| | |
| | |
七、一句话总结
f-string就是Python处理字符串的“便捷工具”。
记住了它的两个要点:加一个f,用{}包变量,就能告别加号拼接的麻烦。
以后凡是需要把文字和变量拼在一起的场景,优先用f-string。
八、小练习(可以让孩子试试)
- 定义两个变量
city = "武汉"和temp = 35,用f-string输出“武汉今天35度” - 用f-string输出“5 × 6 = 30”(提示:花括号里可以直接写
5 * 6) - 定义一个变量
score = 92.567,用f-string输出“你的得分是92.57”(提示:保留两位小数)
📺 视频版:本节课完整讲解视频已发布B站,搜索“秋月教少儿编程”即可观看。
📖 图文版:配套文字教程已同步更新,全平台同名账号可查看。
💡 如果你觉得这篇文章对你有帮助,欢迎加我的微信 4589968,我会在朋友圈分享更多课堂小片段,以及回答家长们问得最多的问题。