当我在Windows,python 3(spyder)中尝试os.rename时,在“python”中出现以下错误。

os.rename('123456789012345678901234567890123456.jpg', '1234567890123456789012345678901234567.jpg')

FileNotFoundError:[WinError 3]系统找不到路径
指定:“123456789012345678901234567890123456789012356.jpg”->
'12345678901234567890123456789012345678901234567.jpg'
上面的文件名有36个字符。
当我尝试使用35个字符的文件名,然后我没有得到错误和重命名工作正常。
os.rename('12345678901234567890123456789012345.jpg', '123456789012345678901234567890123456.jpg')

我也尝试过在源文件和目标文件中使用完整路径C:…..\file name进行重命名,但它使用文件名直到35个字符(完整路径它有254个字符,包括文件名)。当我尝试使用255个字符(即,包含36个字符的文件名的完整路径)时,得到的是Win错误3。如果文件不存在(真的),那么我得到了获胜错误2。
我正在寻找一个通用的解决方案,以便我可以将此应用于所有名为文件的大型文件。

最佳答案

问题是,当添加路径加文件名时,windows的路径大小限制为260个字符。如果将文件移到更靠近根的位置,它将被重命名。
有关此主题的详细信息,请参见this documentation

关于python - Python-大文件名重命名错误(Win错误3),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51618629/

10-13 08:48
查看更多