我正在尝试编写一个脚本,它会自动删除特定文件夹中的所有临时文件,我注意到这个脚本也会删除该文件夹中的所有文本文件.任何人都可以解释为什么这样做?
import os
path = 'C:\scripts27'
for root, dirs, files in os.walk(path):
for currentFile in files:
print "processing file: " + currentFile
extensions=('.tmp')
if any(currentFile.lower().endswith(ext) for ext in extensions):
os.remove(os.path.join(root, currentFile))
我在Windows 8.1 PC 64位上使用Python 2.7.10运行此脚本.
谢谢!
最佳答案 我假设你的意思是提供扩展名单.但在您的情况下,扩展名定义为(‘.tmp’),它不是元组而是字符串.这会导致代码循环遍历所有文件并检查以.,t,m和p结尾的名称,从而删除.txt文件.
这里的修复是将扩展定义为[‘.tmp’]或(‘.tmp’,)(注意尾随).