python - 文件名与文件夹内的文件不匹配
问题描述
Greetings 我有一个名为“10k”的文件夹,其中包含命名1_left
1_right
如下所示的图像。
我的 python 代码打印文件夹中的文件名:
main_file = '10k'
path = os.path.join(main_file,'*g')
files = glob.glob(path)
#l='10k\10_left.jpeg'
for f1 in files:
#print(os.path.basename(f1))
fstr=str(f1)
print(fstr)
请指导我。
解决方案
如果没有更多信息,我只能猜测您想要打印什么。
如果您想要的输出是第一个 1_left 然后 1_right 等等,就像它出现在您的文件夹中一样,原因是 python 以与您的操作系统不同的方式对文件进行排序。
据我所知,files
只是一个列表。因此,您可以使用sort
自定义键自行排序,例如files.sort(key=lambda x: int(x.split("_")[0]))
. 这将按开头的数字对列表进行排序,并且字符串以外的数字按照您可能期望的方式进行排序(所以首先是 1,然后是 2,依此类推)。
推荐阅读
- node.js - Nodejs中firebase函数中的离线Jest单元测试实现
- blender - Fbx 没有导入
- angular - 为什么在 Angular 组件的输入和输出上使用 bindingPropertyName?
- php - mysql_connect 和 openssl_decrypt 的问题
- mysql - Sequelize 如何比较日期的年份和月份
- python - 错误的 SciPy 1.7 源代码构建
- sql-server - Azure Data Studio 连接问题
- rust - 我可以定义一个具有返回特征对象的通用函数的特征吗?
- sql - 使用 WITH 子句的 SQL INSERT/SELECT
- java - Jackson Deserializer 在失败时默认为 null