我有以下问题:在python中重新排序文件名
我需要加载几个数据文件。这些文件通过我的设备命名如下:
meas98.dat
meas99.dat
meas100.dat
meas101.dat
换句话说,没有前导零。因此,如果我通过
os.listdir
得到它们的文件名按字母顺序排列,意为“meas100.dat”将是第一个。这显然不是我想要实现的。问题是做这件事最优雅的方式是什么?
我想出了(unelegant)的方法是:
- 负载文件名
- 提取filenumber
- 顺序filenumber(获得索引)
- 顺序与索引文件名
我很确定python有内置的东西,可以在加载文件时做到这一点...
可能重复的[Python是否有一个内置函数的字符串自然排序?](http://stackoverflow.com/questions/4836710/does-python-have-a-built-in-function-for-string -natural-sort) – Mureinik
编写一些自定义lambda函数来排序函数。按照filename.split排序('。')[ - 1] .replace('meas') –