本文目录导读:

- 列表推导式替代循环
- 字典推导式
- 条件表达式替代if-else
- 使用any()/all()简化条件判断
- 使用*解包
- 使用f-string替代字符串拼接
- 使用zip()并行迭代
- 使用enumerate()获取索引
- 链式比较
- 使用collections模块
- 实战案例:处理学生成绩
- 精简代码原则
我来分享几个Python代码精简的实用案例:
列表推导式替代循环
# ❌ 冗余写法
result = []
for i in range(10):
if i % 2 == 0:
result.append(i * 2)
# ✅ 精简写法
result = [i * 2 for i in range(10) if i % 2 == 0]
字典推导式
# ❌ 冗余写法
squares = {}
for x in range(5):
squares[x] = x * x
# ✅ 精简写法
squares = {x: x * x for x in range(5)}
条件表达式替代if-else
# ❌ 冗余写法
if age >= 18:
status = "成年"
else:
status = "未成年"
# ✅ 精简写法
status = "成年" if age >= 18 else "未成年"
使用any()/all()简化条件判断
# ❌ 冗余写法
has_even = False
for num in numbers:
if num % 2 == 0:
has_even = True
break
# ✅ 精简写法
has_even = any(num % 2 == 0 for num in numbers)
使用*解包
# ❌ 冗余写法 first = items[0] rest = items[1:] # ✅ 精简写法 first, *rest = items
使用f-string替代字符串拼接
# ❌ 冗余写法
name = "张三"
message = "你好," + name + "!quot; + str(age) + "岁"
# ✅ 精简写法
message = f"你好,{name}!age}岁"
使用zip()并行迭代
# ❌ 冗余写法
for i in range(len(names)):
print(f"{names[i]} - {ages[i]}")
# ✅ 精简写法
for name, age in zip(names, ages):
print(f"{name} - {age}")
使用enumerate()获取索引
# ❌ 冗余写法
for i in range(len(items)):
print(f"第{i+1}个: {items[i]}")
# ✅ 精简写法
for i, item in enumerate(items, start=1):
print(f"第{i}个: {item}")
链式比较
# ❌ 冗余写法
if x >= 0 and x <= 100:
print("在范围内")
# ✅ 精简写法
if 0 <= x <= 100:
print("在范围内")
使用collections模块
from collections import Counter
# ❌ 冗余写法
count = {}
for word in words:
if word in count:
count[word] += 1
else:
count[word] = 1
# ✅ 精简写法
count = Counter(words)
实战案例:处理学生成绩
# ❌ 冗余版本
def process_grades(students):
result = []
for student in students:
name = student['name']
grades = student['grades']
avg = sum(grades) / len(grades)
if avg >= 60:
status = "通过"
else:
status = "不及格"
result.append({
'name': name,
'average': avg,
'status': status
})
return result
# ✅ 精简版本
def process_grades(students):
return [
{
'name': s['name'],
'average': (avg := sum(s['grades']) / len(s['grades'])),
'status': '通过' if avg >= 60 else '不及格'
}
for s in students
]
精简代码原则
- 可读性优先 - 不要为了精简而牺牲可读性
- 一行一逻辑 - 避免一行写过多逻辑
- 合理使用特性 - 熟练掌握Python内置函数和特性
- 保持一致性 - 团队统一编码风格
好的代码不仅是精简的,更是清晰的!
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播