【问题标题】:access a file with not fully known filename in python在python中访问文件名不完全已知的文件
【发布时间】:2017-01-25 10:17:21
【问题描述】:

我有一个巨大的文件数据库,其名称如下:

XYZ-ABC-K09235D1-20151220-5H1E2H4A.txt
XYZ-ABC-W8D2S5G5-20151225-HG2EK4GE.txt
XYZ-ABC-ME2C5K32-20160206-DD8BA4R6.txt
etc...

名称具有完全相同的结构:

'XYZ-ABC-' + 8 random char + '%y%m%d' + 8 random char + '.txt'

现在,给定日期,我需要打开一个文件。关键是,我不知道文件的确切名称,因为里面有一些随机字符。例如,对于日期时间 12/05/2014,我知道文件名类似于

XYZ-ABC-????????-20140512-????????.txt

但我不知道使用f.open 命令时的确切名称。最好的方法是什么? (我考虑过首先创建一个包含所有文件名的列表,但我不知道这是否是一种好技术,或者使用glob...之类的东西是否更好。)提前谢谢你。

【问题讨论】:

  • glob 应该这样做,但f.open 是什么?

标签: python char filenames


【解决方案1】:

您可以使用以下代码

import os fileName = [filename for filename in os.listdir('.') if filename.startswith("prefix") and 'otherstring' in filename]

希望这会有所帮助!

【讨论】:

  • 谢谢!这样它重建正确的文件名。但是,它会生成一个带有 [' 和 '] 的文件名字符串,例如 print fileName 给出 ['XYZ-ABC-1W5G46EE-20150317-55CA1E2S.txt'] ...我更喜欢拆分 for 和 if 循环,它运行良好:)
  • 是的,我实际上并没有在我的机器上尝试过。我只是同时写了代码。谢谢:)
猜你喜欢
  • 1970-01-01
  • 2021-04-27
  • 1970-01-01
  • 2015-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-01
  • 1970-01-01
相关资源
最近更新 更多