优化代码def read_data(path): contents = [] for filename in os.listdir(path): data = parse_data(open(path+'/'+filename, 'r').read()) filename = re.sub(r'\D', "", filename) contents.append((int(filename), data)) return contents
时间: 2023-05-18 19:03:05 浏览: 86
解决python中os.listdir()函数读取文件夹下文件的乱序和排序问题
5星 · 资源好评率100%
可以使用以下代码进行优化:
import os
import re
def read_data(path):
contents = []
for filename in os.listdir(path):
with open(os.path.join(path, filename), 'r') as f:
data = parse_data(f.read())
filename = re.sub(r'\D', "", filename)
contents.append((int(filename), data))
return contents
这里使用了 with 语句来打开文件,可以自动关闭文件,避免了手动关闭文件时可能出现的错误。同时使用 os.path.join() 函数来拼接路径,避免了不同操作系统下路径分隔符不同的问题。
阅读全文