2024-04-27 02:30:23 发布
网友
我正在使用Python 3.7.7
我有一段代码,可以获取所有子目录:
from pathlib import Path # Get all subdirectories. p = Path(root_path) dir_lst = [str(x) for x in p.iterdir() if x.is_dir()]
但是现在我需要得到所有的子目录,这些子目录的名称以类似Challen_2013*的模式开头
Challen_2013*
我怎么做
有点脏,但很简单
[str(x) for x in p.iterdir() if x.is_dir() and str(x).startswith('Challen_2013')]
您可能想使用glob:
import glob files = glob.glob(f"root_path/{Challen_2013*}") for file in files: # do stuff
您可以像前面的答案一样使用glob,或者只使用startswith过滤结果:
glob
startswith
[str(x) for x in p.iterdir() if x.is_dir() if x.name.startswith("Challen_2013")]
有点脏,但很简单
[str(x) for x in p.iterdir() if x.is_dir() and str(x).startswith('Challen_2013')]
您可能想使用glob:
您可以像前面的答案一样使用
glob
,或者只使用startswith
过滤结果:相关问题 更多 >
编程相关推荐