[英]OSError: [WinError 123] The filename, directory name, or volume label syntax is incorrect
[英]"WinError 123 The filename, directory name, or volume label syntax is incorrect:" When calling os.rename
我正在編寫一個腳本,將 torrent 文件夾重命名為更易讀的東西......在某些情況下,我會收到上述錯誤。
我真的不知道出了什么問題。 我試過:os.listdir().sort() == originalFolderNames.sort(): 結果是真的,所以我要重命名的內容和目錄中的內容 100% 匹配。
這是導致此問題的代碼:
def renameFolders(self, oldAndNewFolderNames):
foldersToRename = oldAndNewFolderNames[1]
originalFolderNames = oldAndNewFolderNames[0]
dirList = os.listdir()
# Rename folders
for d in dirList:
for i in range(len(foldersToRename)):
if d == foldersToRename[i]:
try:
if foldersToRename[i] != "None":
os.rename(r"{}".format(str(originalFolderNames[i])), r"{}".format(str(foldersToRename[i])))
except Exception as Err:
print(Err)
print("Couldn't rename: {} TO ==> {}".format(originalFolderNames[i], foldersToRename[i]))
break
return print("Done!")
我真的希望有人能幫我解決這個問題。 其他出現類似錯誤的人有非法字符或沒有放入原始字符串,所以像“\”這樣的東西會導致異常。 我認為我的腳本不是這種情況。
謝謝。
文件名不能有非法字符。 linux 和 windows 的非法字符列表(只有“/”在 linux 上是非法的)
forbiddenChars = [">", "<", "/", ":" '"', "\\", "|", "?", "*"]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.