我正在获取项目中的文件列表,其范围可以从 src/app.ts
到 src/component/app/app.ts
。我想做的是:
- 循环列表中的每个文件,
- 查看它是否与特定配置的模式匹配,
- 如果该文件不存在,则将其写入磁盘。
目前我有:
m = re.compile(r'(ts|js)config.json$')
for file in files:
if m.search(file):
return True
else:
self.writeFile()
这有效,但是当不匹配时它会多次调用 write 。 我如何只在检查完成后调用 write ?
最佳答案
您可以取消缩进 else
block ,以便它适用于 for
:
for file in files:
if m.search(file):
return True
else:
self.writeFile()
请注意,在这种情况下,它不像 break
情况那么有趣,您可以简单地编写:
for file in files:
if m.search(file):
return True
self.writeFile()
因为如果模式匹配它就会返回,因此无法到达writeFile
。
关于Python:如果列表中不存在文件则创建文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41989631/