1. 列表推导式生成FizzBuzz序列
案例描述:使用列表推导式生成一个包含前100个数字的FizzBuzz序列,其中3的倍数替换为"Fizz",5的倍数替换为"Buzz",同时是3和5的倍数的替换为"FizzBuzz"。
源码:
fizz_buzz_list = ["FizzBuzz" if i % 15 == 0 else "Fizz" if i % 3 == 0 else "Buzz" if i % 5 == 0 else str(i) for i in range(1, 101)]
print(fizz_buzz_list)
2. 使用CSV模块读取CSV文件
案例描述:使用with
语句和csv
模块读取CSV文件,并打印每一行数据。
源码:
import csv
with open('data.csv', mode='r') as file:
csvFile = csv.reader(file)
for row in csvFile:
print(row)
3. 正则表达式查找字符串中的单词
案例描述:使用正则表达式查找字符串中的所有单词。
源码:
import re
pattern = r'\b[A-Za-z][A-Za-z0-9_]*\b'
text = "Hello, this is a test string with username: JohnDoe"
matches = re.findall(pattern, text)
print(matches)
4. 计算字符串中字符的数量
案例描述:计算字符串中某个字符的出现次数。
源码:
text = "Hello, World!。"
char = "l"
count = text.count(char)
print(f"The character '{char}' appears {count} times.")
5. 使用集合去重
案例描述:使用集合去除列表中的重复元素。
源码:
duplicates = [1, 2, 2, 3, 4, 4, 5]
unique_list = list(set(duplicates))
print(unique_list)
6. 格式化字符串
案例描述:使用format()
方法格式化字符串。
源码:
name = "John"
age = 30
print("My name is {} and I am {} years old.".format(name, age))
7. 实现简单的缓存装饰器
案例描述:使用装饰器缓存函数结果,提高性能。
源码:
def cache(func):
cache_dict = {}
def wrapper(num):
if num in cache_dict:
return cache_dict[num]
else:
val = func(num)
cache_dict[num] = val
return val
return wrapper
@cache
def fibonacci(n):
if n < 2:
return n
return fibonacci(n-1) + fibonacci(n-2)
print(fibonacci(10))
8. 异常处理
案例描述:使用try-except-else-finally
处理异常。
源码:
try:
result = 10 / 0
except ZeroDivisionError:
print("Cannot divide by zero")
else:
print("Result is:", result)
finally:
print("Execution complete.")
9. 使用路径操作
案例描述:使用os.path
模块处理文件路径。
源码:
import os
path = "/path/to/some/file.txt"
dirname = os.path.dirname(path)
basename = os.path.basename(path)
print("Directory:", dirname)
print("Basename:", basename)
10. 使用itertools
模块生成组合
案例描述:使用itertools.combinations
生成给定列表的所有可能组合。
源码:
import itertools
for combination in itertools.combinations([1, 2, 3], 2):
print(combination)
最后,如果你也想自学Python,可以关注我。我会把踩过的坑分享给你,让你不要踩坑,提高学习速度,还整理出了一套系统的学习路线,这套资料涵盖了诸多学习内容:开发工具,基础视频教程,项目实战源码,51本电子书籍,100道练习题等。相信可以帮助大家在最短的时间内,能达到事半功倍效果,用来复习也是非常不错的。
👉 这份完整版的Python全套学习资料已经上传,朋友们如果需要可以关注我,我会发给大家。