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

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

<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是索引到文件名的倒数第四个字符,也就是'.'符号。



  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值