2024-04-23 08:16:46 发布
网友
我正在使用一个程序,该程序根据从目录中读取文件的顺序将输出写入csv文件。但是有大量以1、2、3、4、5、6、7、8、9、10、11、12结尾的文件。我的程序按字母顺序读取文件:1,10,11,12….,2,20,21…..99。问题是,另一个程序假设排序是数值排序,并扭曲图形结果。
实际的文件看起来像:String.ext.ext2.1.txt, String.ext.ext2.2.txt,等等。。。
String.ext.ext2.1.txt, String.ext.ext2.2.txt
如何使用python脚本来完成此操作?
对程序中的文件列表进行排序。不要依赖操作系统调用以正确的顺序提供文件,这取决于实际使用的文件系统。
files = ['String.ext.ext2.1.txt', 'String.ext.ext2.12.txt', 'String.ext.ext2.2.txt'] # files: coming from os.listdir() sorted alphabetically, thus not numerically sorted_files = sorted(files, key=lambda x: int(x.split('.')[3])) # returns: ['String.ext.ext2.1.txt', 'String.ext.ext2.2.txt', 'String.ext.ext2.12.txt']
对程序中的文件列表进行排序。不要依赖操作系统调用以正确的顺序提供文件,这取决于实际使用的文件系统。
相关问题 更多 >
编程相关推荐