告别繁琐字符串拼接:Python f-string 的优雅之道
如果你还在用 + 或 .format() 拼接字符串,是时候升级你的Python技能了。Python 3.6引入的f-string(格式化字符串字面量)彻底改变了字符串格式化的游戏规则。
为什么选择f-string?
传统方式:
name = "小明"
age = 25
print("我叫" + name + ",今年" + str(age) + "岁")
f-string方式:
print(f"我叫{name},今年{age}岁")
简洁性一目了然。f-string在引号前加上f前缀,直接在花括号{}内插入变量或表达式。
高级用法展示
表达式计算
price = 99.9 quantity = 3 print(f"总价:{price * quantity:.2f}元")函数调用
```python
def get_title():
return "高级工程师"
print(f"职位:{get_title()}")
3. **字典取值**
```python
user = {"name": "李华", "city": "北京"}
print(f"{user['name']}来自{user['city']}")
性能优势
f-string不仅写起来更优雅,运行速度也更快。它直接在运行时计算表达式,避免了.format()的方法调用开销,比%格式化快约2倍。
实用技巧
- 对齐文本:
f"{text:<20}"左对齐,宽度20 - 数字格式:
f"{value:.2%}"百分比显示 - 日期格式化:
f"{datetime.now():%Y-%m-%d}"
结语
f-string让Python代码更简洁、更易读、更高效。从今天开始,尝试在项目中全面采用f-string,你会惊讶于它带来的编码体验提升。记住,优秀的代码不仅要是正确的,更应该是优雅的。
小提示:Python 3.8+还支持f"{expr=}"的自调试语法,能同时打印表达式和结果,调试更便捷。