&引用;批次;在Python中一次重命名一个文件

&引用;批次;在Python中一次重命名一个文件,python,list,Python,List,我想执行一种“手动”批处理操作,其中Python查看目录,查看文件列表,然后自动一次显示一个文件,并等待用户输入,然后再转到下一个文件。我将假设文件具有相对随机的名称(Python选择显示它们的顺序并不重要) 所以,我可能有pic001.jpg和myCalendar.docx。有没有一种方法可以让Python(以任何顺序)遍历这些文件,这样我就可以手动为每一个文件预先准备一些内容?例如,它可能看起来像 Please type a prefix for each of the following:

我想执行一种“手动”批处理操作,其中Python查看目录,查看文件列表,然后自动一次显示一个文件,并等待用户输入,然后再转到下一个文件。我将假设文件具有相对随机的名称(Python选择显示它们的顺序并不重要)

所以,我可能有
pic001.jpg
myCalendar.docx
。有没有一种方法可以让Python(以任何顺序)遍历这些文件,这样我就可以手动为每一个文件预先准备一些内容?例如,它可能看起来像

Please type a prefix for each of the following:


myCalendar.docx:
当我输入“2014”时,文件将变成
2014\u myCalendar.docx
。Python接着说

Please type a prefix for each of the following:


myCalendar.docx: 2014
... myCalendar.docx renamed to 2014_myCalendar.docx

pic001.jpg: 
然后我就可以去迪斯尼乐园了

我知道如何重命名文件,导航目录,等等。我只是不知道如何让Python循环遍历某个目录中的每个文件,一次一个,然后让我修改每个文件。我认为如果每个文件都有编号,那么使用for循环就很容易做到这一点,但是对于我正在尝试做的事情,我不能假设它们会有编号

先谢谢你

另外,如果你能给我指一些教程或文档来帮助我,我也会很感激的。我已经打开了几个选项卡,但作为一个对Python和编程相对较新的人,我发现他们的语言有时有点让我摸不着头脑。

类似这样的东西(未经测试):


太棒了,谢谢你!
DIR = '/Volumes/foobar'

prefix = raw_input('Please type a prefix for each of the following: ')

for f in os.listdir(DIR):
    path = os.path.join(DIR, f)
    new_path = os.path.join(DIR, '%s%s' % (prefix, f))
    try:
        os.rename(path, new_path)
        print 'renamed', f
    except:
        raise