python批量修改文件程序代码

import os
def rename_files():
    # get file names from a folder
    file_list = os.listdir(r"C:\Users\DELL\Pictures\精品图片004")
    # print(file_list)
    save_path = os.getcwd()
    print("Current Working Directory is "+save_path)
    os.chdir(r"C:\Users\DELL\Pictures\精品图片004")
    # for each file,rename filename
    for file_name in file_list:
        os.rename(file_name, file_name.translate({ord(char): None for char in "0123456789"}))
    os.chdir(save_path)
rename_files()

跟着udacity上面的python教程写的,可是不知道哪错了?

clipboard.png

阅读 3.2k
1 个回答

file_name这里只是文件名称,你调用rename的时候需要全路径
你可以这样写

import os
def rename_files():
    dir_path = r"C:\Users\DELL\Pictures\精品图片004"

    for file_name in os.listdir(dir_path):
        new_file = file_name.translate(None, '0123456789')
        file_path = os.path.join(dir_path, file_name)
        new_file_path = os.path.join(dir_path, new_file)

        os.rename(file_path, new_file_path)

rename_files()
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题