本文目录导读:
我来分享几个Python极简代码案例,从基础到实用:
1️⃣ 基础极简
交换变量值
a, b = 1, 2 a, b = b, a # 一行交换 print(a, b) # 2 1
列表转字符串
# 传统方式 chars = ['P', 'y', 't', 'h', 'o', 'n'] text = ''.join(chars) print(text) # Python
列表去重(保持顺序)
items = [1, 2, 2, 3, 1, 4] unique = list(dict.fromkeys(items)) print(unique) # [1, 2, 3, 4]
2️⃣ 实用性极简
统计字符串字符频率
text = "hello world"
freq = {c: text.count(c) for c in set(text)}
print(freq)
反转字符串
s = "Python" print(s[::-1]) # nohtyP
合并字典
d1 = {'a': 1, 'b': 2}
d2 = {'c': 3, 'd': 4}
merged = {**d1, **d2}
print(merged) # {'a': 1, 'b': 2, 'c': 3, 'd': 4}
3️⃣ 函数式极简
过滤偶数
numbers = [1, 2, 3, 4, 5, 6] evens = list(filter(lambda x: x % 2 == 0, numbers)) print(evens) # [2, 4, 6]
平方列表
numbers = [1, 2, 3, 4] squared = [x**2 for x in numbers] print(squared) # [1, 4, 9, 16]
4️⃣ 实用小工具
文件读取一行
with open('file.txt') as f:
lines = f.read().splitlines()
获取当前时间
from datetime import datetime
print(datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
5️⃣ 高级技巧
优雅的条件赋值
# 替代 if-else value = 10 result = "大" if value > 5 else "小" print(result) # 大
展开嵌套列表
nested = [[1, 2], [3, 4], [5, 6]] flat = [item for sublist in nested for item in sublist] print(flat) # [1, 2, 3, 4, 5, 6]
📝 编写极简代码的原则
-
利用Python特性
- 列表推导式
- lambda表达式
- 切片操作
-
使用内置函数
map(),filter(),reduce()zip(),enumerate()
-
避免冗余
# 不简洁 results = [] for i in range(10): if i % 2 == 0: results.append(i * 2) # 简洁版 results = [i*2 for i in range(10) if i%2==0]
💡 实战例子:词频统计
from collections import Counter
text = "python is awesome python is powerful"
word_count = Counter(text.split())
print(dict(word_count.most_common(3)))
# {'python': 2, 'is': 2, 'awesome': 1}
这些例子展示了Python的简洁之美。简洁不等于晦涩,好的代码应该既简洁又可读,先从简单的开始,逐步掌握这些技巧!
标签: 案例