在Python中读取特定字符串的Glob模式

问题描述 投票:0回答:1

我有一个文件夹,其中包含我想要作为完整文件路径列表读入的文件列表。

我要读入的文件具有以下结构:

[0-9]_beta_[Y].nii.gz
,其中:

  • [0-9] 是 3 位数字序列(例如 123)
  • [Y]是任意长度的字符串(例如'faces','faces_up')

什么是正确的模式?

这是我到目前为止的代码,但它没有获得我需要的所有文件:

file_list = glob.glob(os.path.join(data_dir, f'*_beta_*nii.gz'))

非常感谢您的帮助!

python glob
1个回答
0
投票

尝试:

file_list = glob.glob(os.path.join(data_dir, '[0-9][0-9][0-9]_beta_*.nii.gz'))

[0-9][0-9][0-9]
恰好匹配 3 位数字,您的
*
可以匹配任何内容。并且您应该在
.
之前先有
nii.gz

该字符串不需要是 f 字符串,您不需要将任何内容替换到其中。

© www.soinside.com 2019 - 2024. All rights reserved.