python 列举文件夹下文件并排序

来源:互联网 发布:python 显示 字符集 编辑:程序博客网 时间:2024/05/29 05:07

要列举当前文件夹下的文件,可以用下面的方法:

<span style="font-size:12px;">import osa=os.listdir('.\')</span>
得到的a是一个列表,里面的元素就是文件夹下每个文件的名字;但是它并不是按我们在文件夹中看到的文件的顺序排列的,而是一种不固定的顺序。

假如我们的文件夹中是后缀名为.jpg的图片,并且按照数字大小来命名,那么我们可以使用列表的sort()方法来对其进行排序,但是它是按string的排序方法排序的。

如果我们想要让它按数字大小来排序,那么我们可以使用sort()的key参数,key参数是一个函数,比如我们想按列表的元素的长度排序,我们可以使用

list.sort(key=len)
如果想按字母排序(不是按ascii码),可以用

list.sort(key = str.lower)
回到我们的问题,想让列表按数字大小排序,可以使用lambda函数:

a.sort(key= lambda x:int(x[:-4]))
-4是索引到文件名的倒数第四个字符,也就是'.'符号。



0 0
原创粉丝点击