要列举当前文件夹下的文件,可以用下面的方法:
<span style="font-size:12px;">import os
a=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是索引到文件名的倒数第四个字符,也就是'.'符号。
本文介绍了一种在Python中如何按数字顺序对文件列表进行排序的方法。通过使用os模块的listdir函数获取文件夹内所有文件名,并利用列表的sort方法结合lambda函数实现自定义排序。适用于文件名以数字命名的情况。
4635

被折叠的 条评论
为什么被折叠?



