使用 os.rename() 重命名文件时出错
Error while renaming files using os.rename()
我正在使用 python 重命名以二进制文件形式存在但实际上是图像的文件。所以我需要将它们重命名为 .jpg 格式。我正在使用 os.rename() 但出现错误:
Traceback (most recent call last):
File "addext.py", line 8, in <module>
os.rename(filename, filename + '.jpg')
OSError: [Errno 2] No such file or directory
这是我的代码。
import os
for filename in os.listdir('/home/gpuuser/Aditya_Nigam/lum2/'):
# print(filename + '.jpg')
# k = str(filename)
# print k
# k = filename + '.jpg'
os.rename(filename, filename + '.jpg')
print('Done')
os.listdir
only return a list of filenames without their absolute paths, and os.rename
将尝试从当前目录查找文件名,除非给定绝对路径。基本上,代码只有在与 os.listdir
.
调用的目录相同的目录中执行时才会起作用
考虑执行以下操作:
import os
from os.path import join
path = '/home/gpuuser/Aditya_Nigam/lum2/'
for filename in os.listdir(path):
os.rename(join(path, filename), join(path, filename) + '.jpg')
os.path.join
方法将以与平台无关的方式安全地将路径与文件名连接在一起。
我正在使用 python 重命名以二进制文件形式存在但实际上是图像的文件。所以我需要将它们重命名为 .jpg 格式。我正在使用 os.rename() 但出现错误:
Traceback (most recent call last):
File "addext.py", line 8, in <module>
os.rename(filename, filename + '.jpg')
OSError: [Errno 2] No such file or directory
这是我的代码。
import os
for filename in os.listdir('/home/gpuuser/Aditya_Nigam/lum2/'):
# print(filename + '.jpg')
# k = str(filename)
# print k
# k = filename + '.jpg'
os.rename(filename, filename + '.jpg')
print('Done')
os.listdir
only return a list of filenames without their absolute paths, and os.rename
将尝试从当前目录查找文件名,除非给定绝对路径。基本上,代码只有在与 os.listdir
.
考虑执行以下操作:
import os
from os.path import join
path = '/home/gpuuser/Aditya_Nigam/lum2/'
for filename in os.listdir(path):
os.rename(join(path, filename), join(path, filename) + '.jpg')
os.path.join
方法将以与平台无关的方式安全地将路径与文件名连接在一起。