花费了2多个小时才解决问题,但没有任何救援方法。我正在尝试使用python脚本删除文件夹(windows)中的文件。以下是我正在执行的步骤:
查找目录中的所有文件以及绝对文件名和目录
for origFile in os.listdir(base_dir):
if origFile.endswith(".log"):
fullFileName = os.path.abspath(origFile)
fileDir = os.path.dirname(fullFileName)`
打印文件名,然后使用以下语句删除文件
os.remove(os.path.join(fileDir,origFile))
我得到一个错误:
FileNotFoundError:[WinError 2]系统找不到文件 指定:'C:\ Users \ N93203 \ File CleanUp \ swiftmics1_SILog- Copy.log'
它会自动添加"\\"
而不是"\"
,因此找不到文件。
谢谢。
答案 0 :(得分:4)
双\
只是表示字符串的一种方式,没有双反斜杠。
您可以通过使用os.path.join(fileDir, origFile).count('\\')
但是,os.remove(os.path.join(baseDir, origFile))
应该在if块中起作用
如评论中所述,加入abspath
毫无意义,因为它将从当前工作目录中产生一个全名,而不是您想要的base_dir
。
请确保加入baseDir