<p>我有以下代码:</p>
<pre><code>if inputFileName:
if inputFileName.lower().endswith(mediaExt):
for word in ignoreWords:
if word not in inputFileName.lower():
if os.path.isfile(inputDirectory):
try:
processFile(fileAction, inputDirectory, outputDestination)
except Exception, e:
logging.error(loggerHeader + "There was an error when trying to process file: %s", os.path.join(inputDirectory, inputFileName))
logging.exception(e)
else:
try:
processFile(fileAction, os.path.join(inputDirectory, inputFileName), outputDestination)
except Exception, e:
logging.error(loggerHeader + "There was an error when trying to process file: %s", os.path.join(inputDirectory, inputFileName))
logging.exception(e)
</code></pre>
<p>ignoreWords是一个列表,其中包含一些我不希望文件名包含的单词。现在我的问题是,它将在同一个文件中循环执行列表中的x项。我希望它只匹配单词一次(或者在匹配完成时运行processFile一次),但不能找到合适的解决方案</p>
<p>替换</p>
<pre><code>for word in ignoreWords:
if word not in inputFileName.lower():
</code></pre>
<p>与</p>
<pre><code>if not any(word in inputFileName.lower() for word in ignoreWords):
</code></pre>