python遍历文件夹种的文件,筛选复制,txt写

import os, shutil

# 规范化绝对路径
src_dir = os.getcwd()  #得到当前py文件的路径

# if not os.path.exists(dst_dir):
# os.makedirs(dst_dir)
# print("fistr_dir is:\t{}".format(fistr_dir))

if os.path.exists(src_dir):
    # root 所指的是当前正在遍历的这个文件夹的本身的地址
    # dirs 是一个 list,内容是该文件夹中所有的目录的名字(不包括子目录)
    # files 同样是 list, 内容是该文件夹中所有的文件(不包括子目录)
    for dirnames, dirs, files in os.walk(src_dir):
        for filename in files:
            if filename.endswith('.pdf'):  判断是否该后缀
                if ( (filename != "paper.pdf") and (filename != "marked.pdf")):
                    fub_dir = dirnames +'\\'+ filename #与os.path.join一样
                    print(fub_dir)
                    new_file = os.path.join(dirnames, "paper.pdf")
                    print(new_file)
                    os.rename(fub_dir, new_file) #文件重命名
                    shutil.copyfile(new_file, os.path.join(dirnames, "marked.pdf"))

            # txt-insert
            if( filename == "ref.txt"):
                fub_dir = dirnames + '\\' + filename
                print(fub_dir)
                fp = open(fub_dir) #读取
                lines = []
                for line in fp:
                    lines.append(line)
                fp.close()

                lines.insert(-1, 'affiliation = {  |  }')  # 在倒数第二行插入
                s = ''.join(lines)
                fp = open(fub_dir, 'w')
                fp.write(s)    #写入
                fp.close()

print('over!')

 

你可能感兴趣的:(Python)