Python 是一门简洁而强大的语言,掌握一些小技巧可以让代码更优雅、更高效。以下是几个实用技巧,能帮助你写出更 Pythonic 的代码。
1. 使用 enumerate 获取索引和值
在遍历列表时,我们常需要同时获取元素索引和值。传统方法是用 range(len()),但更简洁的方式是 enumerate:
fruits = ['apple', 'banana', 'orange']
for i, fruit in enumerate(fruits):
print(f"{i}: {fruit}")
这样既清晰又避免了手动维护索引变量。
2. 用 zip 并行迭代多个可迭代对象
当需要同步遍历两个或更多列表时,zip 是最佳选择:
names = ['Alice', 'Bob', 'Charlie']
scores = [85, 92, 78]
for name, score in zip(names, scores):
print(f"{name}: {score}")
如果列表长度不同,zip 会在最短列表结束时停止,也可用 itertools.zip_longest 处理不等长情况。
3. 列表推导式:简洁地创建新列表
列表推导式能将多行循环压缩为一行,且性能更优:
# 生成平方数列表
squares = [x**2 for x in range(10)]
# 带条件过滤
even_squares = [x**2 for x in range(10) if x % 2 == 0]
它同样适用于字典和集合推导式。
4. f-string:更直观的字符串格式化
Python 3.6+ 引入的 f-string 让字符串嵌入变量变得非常简单:
name = "World"
greeting = f"Hello, {name}!"
# 支持表达式
result = f"2 + 3 = {2 + 3}"
相比 % 格式化和 str.format(),f-string 更易读且性能更好。
这些技巧只是 Python 冰山一角,日常多练习就能逐渐养成 Pythonic 的编程习惯,让代码更简洁高效。