【发布时间】:2012-08-10 20:01:50
【问题描述】:
我想问一下如何以正确的顺序(按字母顺序和数字递增)有效地处理对文件夹中文件名的访问。
例如,我在一个文件夹中有以下文件:apple1.dat、apple2.dat、apple10.dat、banana1.dat、banana2.dat、banana10.dat。我想读取文件的内容,以便首先读取apple1.dat,最后读取banana10.dat。
谢谢。
这是我到目前为止所做的。
from glob import glob
files=glob('*.dat')
for list in files
# I read the files here in order
但正如所指出的,apple10.dat 位于 apple2.dat 之前
【问题讨论】:
-
如果您让我们知道您已经尝试过什么会有所帮助,这样我们就可以避免在答案中讨论这个问题。你在做你做的事情时遇到了什么问题等等。
-
请记住,自然顺序文件通常使用字母 ASCII 值排序,这将放置例如
apple10.dat在apple1.dat之后但之前apple2.dat。 -
您复制了我的答案,但您忘记使用 sorted() 函数对文件列表进行排序
标签: python list filenames glob