python - 使用 Python 重命名数百个长文件名
问题描述
我想遍历数百个文件名并重命名它们。问题是文件名超过 260 个字符,并且包含使 os.rename 不可用的字符。
下面的代码使用常规文件名运行,但不使用前面描述的文件:
import os
filepath = "path"
path = os.chdir(filepath)
count = 1
for filename in os.listdir(path):
new_file_name = f"{count}.csv"
os.rename(filename,new_file_name)
count += 1
当我使用长文件名运行时,我得到:
Traceback (most recent call last):
File "C:\Users\sarah\Desktop\Python\program.py", line 7, in <module>
os.rename(filename,new_file_name)
FileNotFoundError: [WinError 3] The system cannot find the path specified:
有没有办法遍历这些文件名并重命名它们?
解决方案
在 Linux 的 Windows 中,文件名不能超过 255 个字符。
Linux:
touch 'zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz'
touch: cannot touch ‘zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz’: File name too long
视窗:
c:\Users\cp>echo 'foo' > zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
The filename, directory name, or volume label syntax is incorrect.
推荐阅读
- python - 另一个脚本上的函数未被调用(AttributeError :)
- node.js - 运行 `npm audit fix` 来修复它们,或运行 `npm audit` 了解详细信息。在安装 NPM 时?
- python - 如何更改 Seaborn Lineplot 函数中置信区间的填充图案(阴影线)
- python - 将 Collatz 周期运行到一百万,没有处理延迟
- reactjs - 如何将 React 应用程序置于维护模式
- windows-server-2012-r2 - HP Proliant windows server 2012 外部ip
- flutter - 连接到 mysqli 的问题 - 异常:SocketException
- html - 如何对齐我的卡的按钮在中心?
- python - 梯度下降可以近似奇异值分解(SVD)吗?
- git - 对分包商隐藏 git 存储库的内容