我有一组二进制文件,它们的名称如下:
d010-recomb.bin
d011-recomb.bin
.............
.............
.............
d100-recomb.bin
使用python glob模块,我可以访问文件夹中的所有文件,并可以对这些文件进行进一步处理:
^{pr2}$我也可以对要访问的文件使用一些条件:
例如,如果我使用以下代码,那么我将获得对d010中所有文件的访问权-重新组合箱至d019-重新组合箱在
binary = sorted(glob.glob('C:/Users/Desktop/bin/d01*.bin'))
但是使用这个标准,我无法访问像d015到d025这样的文件。在
请告诉我如何才能访问这些文件。在
您可以使用以下方法之一筛选列表:
如果您对目录中的元素数量有100%的信心,您可以:
^{pr2}$或者,一旦对数据进行排序,您可能会找到第一个索引和最后一个索引和[1][2]:
然后过滤列表;要么将文件名部分转换为
int
,要么创建要包含的字符串范围:上面的代码生成字符串
'd015'
到'd025'
作为一组字符串,用于快速成员资格测试,然后根据该集合测试每个文件的前4个字符;因为glob()
返回整个文件名,所以我们从路径中切掉一部分以使其正常工作。在对于可变路径,我将基于路径存储切片偏移量(对于速度):
^{pr2}$后者演示:
您可能需要手动添加此限制,因为它不能由glob模式完成。在
如果您确切地知道文件名是如何构建的,您可以
相关问题 更多 >
编程相关推荐