python-3.x - 如何在python中对超过1个数字的文件进行排序?
问题描述
所以我有一些看起来像这样的文件.../100keV8cm.txt。这从 1-10 厘米和 80,100,120 keV 开始。问题是,当我尝试对它们进行排序时,它以正确的顺序为所有能量放置 1-9 厘米,但它将每个能量的 10 厘米放置在附加列表的末尾。这是我到目前为止的代码:
for i in range(emin,emax+steps,steps):
for filename in os.listdir(directory):
if f'{i}keV' in filename:
input_files.append(directory + filename)
else:
continue
emin+=steps
input_files.sort(key=lambda f: int(''.join(filter(str.isdigit, f))))
我希望它在 80keV 上走 1-10cm,然后在 100keV 下走下 10 个文件,依此类推。
解决方案
推荐阅读
- html - 如何创建类似于此图像的悬停/活动链接?
- angular - 如何使用 *ngFor 在模板中反向显示数组?
- java - 瓦丁。在我上传文件之前触发 addSucceededListener()
- php - 错误 PHP 7.4 试图访问 bool 类型值的数组偏移量
- sql - 在 Oracle SQL 中使用 SUM 和 CASE
- dynamic - 基于第一列标准的表第二列动态列表
- python - Python:如何拆分WARC文件?
- javascript - 我正在尝试从项目的根目录运行 jest 来测试两个文件,jest 作为开发依赖项安装,但运行测试脚本会抛出 syntaxError?
- vim - 如何在 vim 7.4 中对 ansible 进行自动完成和语法检查?
- amazon-web-services - AWS Neptune 工作台可视化