python - 如何使用 python 重命名文件夹中的多个文件?

标签 python file python-3.x rename file-rename

我的“我的文档”中有 1000 多个文件夹。在每个文件夹中,只有 4 张照片需要按“北”、“东”、“南”和“西”的顺序命名。目前它们被命名为 DSC_XXXX。我写了这个脚本,但它没有执行。

import sys, os

folder_list = []
old_file_list = []
newnames = [North, South, East, West]

for file in os.listdir(sys.argv[1]):
    folder_list.append(file)

 for i in range(len(folder_list)):
    file = open(folder_list[i], r+)
    for file in os.listdir(sys.argv[1] + '/' folder_list[i]):
       old_file_list.append(file)
       os.rename(old_file_list, newnames[i])

我的思路是把这1000个文件夹的名字全部取出来存到folder_list中。然后打开每个文件夹,将4个图片名称保存在old_file_list中。从那里我想使用 os.rename(old_file_list, newnames[i]) 将 4 张照片重命名为 North East South 和 West。然后我希望它循环遍历“我的文档”中的尽可能多的文件夹。我是 python 的新手,非常感谢任何帮助或建议。

最佳答案

您不需要所有列表,只需即时重命名所有文件即可。

import sys, os, glob

newnames = ["North", "South", "East", "West"]

for folder_name in glob.glob(sys.argv[1]):
    for new_name, old_name in zip(newnames, sorted(os.listdir(folder_name))):
       os.rename(os.path.join(folder_name, old_name), os.path.join(folder_name, new_name))

关于python - 如何使用 python 重命名文件夹中的多个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30766276/

相关文章:

python - 使用Python处理来自url的img

python - 通过 Python Flask 服务器提供服务时,Vue 应用程序不会加载

python - python中的段错误?

Python导入类型检测

arrays - Perl:将文件加载到哈希中

php - 关于如何存储/管理数据库中条目的文件的建议

python - 使用BeautifulSoup打印目录中所有html文件的内容

python - 为什么我不断收到位置参数错误?

matlab - 读取文本文件并通过 Matlab 绘制它

python - 我们如何在Python中计算可能性?