我有一个程序,需要输入数字列表(逗号分隔),我应该运行以这些数字开头的文件
myprogram.py 1,6,8
Run Code Online (Sandbox Code Playgroud)
必须检查文件1001_filename, 1004_filename, 6001_filename, 8003_filename, 8004_filename等,
一种方法是迭代 3 次(一次为 1*, 6*, 8* )并执行 if
for file_type in file_types:
file.startswith(file_type):
Run Code Online (Sandbox Code Playgroud)
但我怎样才能匹配列表中的任何一个呢?
是否有一个正则表达式可以执行以下操作:
file.startswith(any of file_types): file_types 这里是1,6,8 或有什么效果?
您可以使用glob查找所有文件:
from glob import glob
path = "path_to/"
files = glob(path+"[1,5,8]*")
Run Code Online (Sandbox Code Playgroud)
我们将匹配以1,5或指向的8任何目录中开头的任何文件。path