我必须使用循环读取文件夹中的文件才能执行进一步的操作。
代码格式
for file in glob.glob('SZ*.csv'):
... print(file)
输出我得到
SZ1.CSV
SZ10.CSV
SZ11.CSV
SZ12.CSV
SZ13.CSV
SZ14.CSV
SZ15.CSV
SZ16.CSV
SZ17.CSV
SZ18.CSV
SZ19.CSV
SZ2.CSV
SZ20.CSV
SZ21.CSV
SZ22.CSV
SZ3.CSV
SZ4.CSV
SZ5.CSV
SZ6.CSV
SZ7.CSV
SZ8.CSV
SZ9.CSV
但我想根据文件名中的数字按顺序读取文件。
如何做到这一点?
您可以对其进行排序-
import re
sorted(glob.glob("SZ*.CSV"), key=lambda x: int(re.findall("[0-9]+", x)[0]))
尝试
import re
l = glob.glob('SZ*.CSV')
l.sort(key=lambda x: int(re.sub('[A-Z.]+', '', x)))
for file in l:
print(file)