使用Python重命名基于文件串的文件

时间:2014-03-17 14:35:26

标签: python

我在Windows and Rename tags中发布了以下代码,并认为在此处询问此代码可能更有意义。基本上我要做的是使用它来根据文件中的特定文本字符串重命名文件(下面的line.strip()中的文本字符串)。我想知道如何在Python中实现这样的东西,因为这是我认为它应该看起来但不是完整工作的粗略草图。有没有最好的方法填补这里的空白?任何建议都会非常感激。

for file in directory:
     f = fopen(file, 'r')
     line = f.readLine();
     while(line):
         if(line.strip() == '<th style="width: 12em;">Name:</th>'):
             nextline = f.readLine().strip();
             c = nextline.find("</td>")
             name = nextline[4:c]
             os.commandline(rename file to name)
             break
         line = f.readLine()

2 个答案:

答案 0 :(得分:0)

我认为移动文件最安全的方法是使用shutil module。为此,请替换

os.commandline(rename file to name)

shutil.move(os.path.join(directory,file), os.path.join(directory,name))

答案 1 :(得分:0)

您可以使用提供的os命令重命名文件:(首先关闭文件)

f.close()
os.rename(file_name, new_name)