使用通配符打开单个文件

open a single file with a wildcard

我知道将被放入 windows 文件夹中的文件格式。

包含文件名,然后是日期和时间戳,文件如下所示:

temp_path = 'H:\Temp\file_name_' + yyyymmddhhmmss + '.txt'

鉴于我知道日期 yyyymmdd 但我 不知道 时间 hhmmss,我使用通配符替换了时间部分下面的代码。


import datetime as dt

# todays date in yyyymmdd format
today = dt.datetime.today()
today_yyyymmdd = today.strftime('%Y%m%d')

# now the file
temp_path = 'H:\Temp\test_file_' + today_yyyymmdd + '*.txt'

print(temp_path)

with open(temp_path, 'r') as f:
    data = f.read()

print(data)

如果我从 .txt 前面删除通配符 *,代码就可以工作,但它会失败。

但是,如何打开带有通配符的文件?

您需要使用 glob 模块

import glob
temp_path = glob.glob('file_' + today_yyyymmdd + '*.txt')[0]

https://docs.python.org/fr/3.6/library/glob.html