python - 如何按数字顺序对python中的文件进行排序?

标签 python sorting

我正在从图像创建 pdf 文件,但在按数字顺序对 jpg 文件进行排序时遇到问题 我有 20 个文件,从 1.jpg 到 20.jpg 我正在使用下面的代码按顺序对所有文件进行排序

import os
sorted(os.listdir('path/to/jpg/files'))

但它会打印 1.jpg、11.jpg、12.jpg 等等。

有什么想法吗?

最佳答案

sorted 需要一个键。您可以在键中使用 lambda 函数进行数字顺序排序。

例如:

import os
sorted(os.listdir('path/to/jpg/files'), key=lambda x: int(x.split(".")[0])) 

关于python - 如何按数字顺序对python中的文件进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51154187/

相关文章:

python - 如何在 Django 中添加我自己的 html 模板

jQuery 数据表 : how to sort by specific column?

python - 在Python中,当两个文件都未排序时,我应该如何有效地对一个大文件进行排序以匹配另一个大文件中的公共(public)元素?

python - 如何在保留键的同时对字典进行排序?

c# - 无法对 DataGrid 中的日期列进行排序

python - 乘客停止杀死孤儿进程

python - 训练时 Pytorch CUDA OutOfMemory 错误

python - repr() of dict, but ordered

python - 将 Django 与 virtualenv 一起使用,出现错误 ImportError : No module named 'django.core.servers.fastcgi'

c# - 使用 C# Linq 表达式自定义排序