小编Dan*_*ott的帖子

如何使用Python更改目录中的多个文件名

我正在学习Python,我的任务是:

  • 将"file_"添加到目录中每个名称的开头
  • 更改扩展名(目录目前包含4种不同类型:.py,.TEXT,.rtf,.text)

我有很多文件,都有不同的名字,每个长7个字符.我能够改变扩展,但感觉非常笨重.我很肯定有一种更清洁的方式来写下面的内容(但它的功能,所以没有对该注释的投诉):

    import os, sys
    path = 'C:/Users/dana/Desktop/text_files_2/'
        for filename in os.listdir(path):
            if filename.endswith('.rtf'):
                newname = filename.replace('.rtf', '.txt')
                os.rename(filename, newname)
        elif filename.endswith('.py'):
                newname = filename.replace('.py', '.txt')
                os.rename(filename, newname)
        elif filename.endswith('.TEXT'):
                newname = filename.replace('.TEXT', '.txt')
                os.rename(filename, newname)
        elif filename.endswith('.text'):
               newname = filename.replace('.text', '.txt')
               os.rename(filename, newname)
Run Code Online (Sandbox Code Playgroud)

我还有一点问题:

  1. 脚本当前必须在我的目录中才能运行.
  2. 我无法弄清楚如何将"file_"添加到每个文件名的开头[ 你会认为这将是一个简单的部分 ].我试过将newname声明为

    newname = 'file_' + str(filename)
    
    Run Code Online (Sandbox Code Playgroud)

    它然后声明文件名未定义.

对我现有的两个问题的任何帮助都将不胜感激.

python file-handling

4
推荐指数
1
解决办法
4073
查看次数

标签 统计

file-handling ×1

python ×1