Python:读取一个字符串并用它来重命名文件

Python: read a string and use it to rename the file

我是 python 的新手,我正在尝试使用文件中特定行上的字符串重命名一组文件,并使用它来重命名文件。这样的字符串在每个文件的同一行找到。

举个例子:

我正在尝试使用这段代码,但我不知道如何让它工作:

for filename in os.listdir(path):
  if filename.startswith("out"):
     with open(filename) as openfile:
        fourteenline = linecache.getline(path, 14)
           os.rename(filename, fourteenline.strip())

请注意提供文件的完整路径,以防您尚未准备好在此文件夹中工作(使用 os.path.join())。此外,使用 linecache 时,您不需要 open 文件。

import os, linecache

for filename in os.listdir(path):
    if not filename.startswith("out"): continue # less deep
    file_path = os.path.join(path, filename) # folderpath + filename
    fourteenline = linecache.getline(file_path, 14) # maybe 13 for 0-based index?
    new_file_name = fourteenline[40:40+50].rstrip() # staring at 40 with length of 50
    os.rename(file_path, os.path.join(path, new_file_name))

有用的资源: