【发布时间】:2020-11-14 11:12:29
【问题描述】:
我在 Python 中创建了一个脚本,该脚本将文件插入到与文件扩展名相同的文件夹中。在 Windows 上工作正常,在 Mac Os 上出现问题。我附上收到的代码和错误。
import os
import shutil
percorso = input("Inserisci il percorso ")
os.chdir(percorso)
for f in os.listdir():
f_name, f_ext = os.path.splitext(f)
f_new = f_ext[1:len(f_ext)]
if os.path.isdir(f) or os.path.isdir('/Users/net/Downloads/.DS_Store'):
pass
print("sono una cartella")
else:
print("sono un file")
#is_dir = os.path.exists(r"C:\Users\LUIS\Desktop\prova" + f_new)
#print(is_dir)
try:
os.mkdir(f_new)
print("cartella creata")
except FileExistsError:
pass
print("File inseriti nelle rispettive cartelle")
except FileNotFoundError:
print("Tutti i file sono stati ordinati")
f2 = f_name+f_ext
shutil.move(f2, f_new)
这是我得到的错误:
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/shutil.py", line 803, in move
os.rename(src, real_dst)
FileNotFoundError: [Errno 2] No such file or directory: '.DS_Store' -> ''
有什么帮助吗?谢谢
【问题讨论】:
-
尝试排除隐藏文件。 stackoverflow.com/q/7099290/839733
-
请提供完整回溯。你的代码没有执行
os.rename。 -
我认为您应该移动
try块中的f2 = f_name+f_ext; shutil.move(f2, f_new)部分?
标签: python python-3.x