重命名或替换文件夹中的文件
rename or replace the files in a folder
我有一个包含图像的文件夹。每张图片命名为
abc_001.jpg
abc_002.jpg
我需要通过删除第一个文本 abc_ 并从数字开始重命名图像
我照做了
import os
path = '/Desktop/my_folder'
folder = os.fsencode(path)
filenames = []
for file in os.listdir(folder):
filename = os.fsdecode(file)
if filename.endswith ('.jpg'):
filenames=filename.replace('abc_','')
但它不起作用。如何替换或删除第一个文本?
我试过了
for file in os.listdir(folder):
filename = os.fsdecode(file)
if filename.endswith ('.jpg'):
filenames = filename.replace('abc_', '')
os.rename(filename, filenames)
但是得到了
os.rename(filename, filenames)
FileNotFoundError: [Errno 2] No such file or directory: 'abc_000000000009.jpg' -> '000000000009.jpg'
您可以使用 os.rename(source, destination)
重命名文件或目录
其中source是你的文件路径,destination是新的文件名路径
您需要使用 os.rename(src, dst)
而不是 filename.replace
。如果您有任何问题,请告诉我。
您需要按以下顺序重命名文件:
for file in os.listdir(folder):
filename = os.fsdecode(file)
if filename.endswith ('.jpg'):
new_file_name=filename.replace('abc_','')
os.rename(filename, new_file_name)
我解决了这个问题所以遇到同样问题的任何人都可以尝试
for file in os.listdir(folder):
filename = os.fsdecode(file)
if filename.endswith ('.jpg'):
filenames = filename.replace('abc_', '')
os.rename(os.path.join(path,filename), os.path.join(path,filenames))
我有一个包含图像的文件夹。每张图片命名为
abc_001.jpg
abc_002.jpg
我需要通过删除第一个文本 abc_ 并从数字开始重命名图像
我照做了
import os
path = '/Desktop/my_folder'
folder = os.fsencode(path)
filenames = []
for file in os.listdir(folder):
filename = os.fsdecode(file)
if filename.endswith ('.jpg'):
filenames=filename.replace('abc_','')
但它不起作用。如何替换或删除第一个文本?
我试过了
for file in os.listdir(folder):
filename = os.fsdecode(file)
if filename.endswith ('.jpg'):
filenames = filename.replace('abc_', '')
os.rename(filename, filenames)
但是得到了
os.rename(filename, filenames)
FileNotFoundError: [Errno 2] No such file or directory: 'abc_000000000009.jpg' -> '000000000009.jpg'
您可以使用 os.rename(source, destination)
重命名文件或目录
其中source是你的文件路径,destination是新的文件名路径
您需要使用 os.rename(src, dst)
而不是 filename.replace
。如果您有任何问题,请告诉我。
您需要按以下顺序重命名文件:
for file in os.listdir(folder):
filename = os.fsdecode(file)
if filename.endswith ('.jpg'):
new_file_name=filename.replace('abc_','')
os.rename(filename, new_file_name)
我解决了这个问题所以遇到同样问题的任何人都可以尝试
for file in os.listdir(folder):
filename = os.fsdecode(file)
if filename.endswith ('.jpg'):
filenames = filename.replace('abc_', '')
os.rename(os.path.join(path,filename), os.path.join(path,filenames))