Python 中高级知识梳理
1、文件操作
Python中的文件操作通常使用内置的open()
函数来打开文件。以下是一个简单的示例:
with open("file.txt", "r") as f: content = f.read() print(content)
pen()
函数的第一个参数是文件名,第二个参数是打开文件的模式。以下是一些常用的模式:
"r"
:只读模式,read 读取全部、readline 读取首行、readline 读取生成列表"w"
:写入模式(会覆盖已有文件)"a"
:追加模式(不会覆盖已有文件)
2、正则表达式
正则表达式是一种强大的工具,可以帮助我们从文本中提取信息或进行文本替换。Python中可以使用内置的re
模块来进行正则表达式操作。以下是一个示例:
import re with open('retest.txt','r',encoding='utf-8') as f: retest = f.read() pattern = r'python' matches = re.findall(pattern, retest, re.IGNORECASE) print(matches)
在这个示例中,我们定义了一个正则表达式模式r'python',然后使用re.findall()
函数来查找匹配该模式的所有字符串。在使用re.IGNORECASE 不区分大小写,最后,我们将匹配的结果打印出来。
3、迭代器
迭代器是一种特殊的函数,在字符串,列表或元组这些可迭代对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。iter()转成迭代器 和 next()获取下一个元素,迭代结束抛出StopIteration异常
#使用迭代器计算列表中元素的平方和 def square_sum(iterable): # 通过iter()将列表 iterable 转换成迭代器 iterator = iter(iterable) result = 0 try: while True: # 通过next()获取一个元素,因为是惰性所以每次只能获取一个。需要循环遍历获取 element = next(iterator) result += element ** 2 # 遍历完所有元素再次遍历就会抛出StopIteration异常 except StopIteration: pass return result my_list = [1, 2, 3, 4, 5] total_square_sum = square_sum(my_list) print(total_square_sum) # 输出:1+4+9+16+25)