最近几天工作的内容是对40个项目进行考核,每个项目都需要一个考核评分表,已经有了项目的列表。

如果用常规的方法,需要复制40个文件,并逐个修改,不光工作量大,也容易出错,后期修改也不方便。

于是想到了用Word的邮件合并功能,用Word控制评分表的样式,用Excel控制评分表中的内容。

关于邮件合计的内容参考以下教程:

https://jingyan.baidu.com/article/335530da51745219cb41c3ea.html

合并完成后所有的内容都在同一个文件内,需要对其进行拆分,每个表为一个单独的文件。关于拆分参考以下教程:

https://jingyan.baidu.com/article/37bce2be16dbc81002f3a235.html

注意:需要把第一行设置成标题。另外:文档拆分有一个缺点,就是独立生成的文档中,会出现空白页,这是因为【文档拆分】的过程中自动生成了新的【分节符(连接)】,可以分别进行手动删除。

拆分完成后,文件名不符合要求,需要进行批量重命名,重命名脚本使用Python编写,具体代码如下:

import os

def rename():
with open(r"I:\Work\03_项目\2018_05_考核\1组策划考核\ok\文件名.txt", encoding='UTF-8') as f:
str = f.readlines() # 新文件名按行保存
path = r"I:\Work\03_项目\2018_05_考核\1组策划考核\重命名" # 要重命名的文件路径
filelist = os.listdir(path) # 该文件夹下所有的文件(包括文件夹)
filelist.sort(key=lambda x: int(x[3:-4])) # 对文件进行排序,忽略前面的汉字及扩展名
i = 0
for files in filelist: # 遍历所有文件
Olddir = os.path.join(path, files) # 原来的文件路径
if os.path.isdir(Olddir): # 如果是文件夹则跳过
continue
filetype = os.path.splitext(files)[1] # 文件扩展名
Newdir = os.path.join(path, str[i].strip('\n') + filetype) # 新的文件路径
os.rename(Olddir, Newdir) # 重命名
i = i + 1 rename()

利用Python对文件进行批量重命名的更多相关文章

  1. 利用Python对文件进行批量重命名——以图片文件为例

    效果如下:0001号用户的第 i 张图片 代码: import os class ImageRename(): def __init__(self): self.path = 'C:/Users/lb ...

  2. linux下的文件操作——批量重命名

    概述:在日常工作中,我们经常需要对一批文件进行重命名操作,例如将所有的jpg文件改成bnp,将名字中的1改成one,等等.文本主要为你讲解如何实现这些操作 1.删除所有的 .bak 后缀: renam ...

  3. 使用bat文件实现批量重命名功能

    在生活中我们总会碰到对大量文件进行重命名操作,这时如果一个一个的,选取文件→右键→重命名→选取文件,这样操作势必会浪费大量时间. 现在小编就告诉大家一个使用bat文件(命令行)的方法,快速对文件进行重 ...

  4. 使用 nodejs 对文件进行批量重命名

    0. 前言 从B站下载了一点视频,硕鼠自动将标题添加到了每个文件名的前面,导致文件名过长,不方面查看文件的具体内容. 虽然只有二十几个文件,但是手动删除前缀还是个不小的工作量,还有可能删除错误.考虑到 ...

  5. python练习程序(批量重命名)

    # -*- coding: cp936 -*- import sys,os,string d=0; path="F://test" srcfile=os.listdir(path) ...

  6. Linux批量重命名文件

    五种方法实现Linux批量重命名文件 Linux批量重命名文件是指对某些特定的文件统一进行重新命名,以改变原来一批文件的名称,这里介绍五种方法来实现. Linux批量重命名文件会涉及到改变一个字母.改 ...

  7. 使用java对文件批量重命名

    有时候从网络上下载的电视剧或者动漫,名字上都会被该网站加上前缀或者后缀,如图: 那么处女座的同学就不同意了,不行,我就是想让它按照我的习惯方式命名!但是呢,一个个修改是不是特别麻烦,如果是上百个呢?如 ...

  8. python之对指定目录文件夹的批量重命名

    python之对指定目录文件夹的批量重命名 import os,shutil,string dir = "/Users/lee0oo0/Documents/python/test" ...

  9. Windows下对文件夹下所有图片批量重命名(附C++,python,matlab代码)

    https://blog.csdn.net/u011574296/article/details/72956446: Windows下对文件夹下所有图片批量重命名(附C++,python,matlab ...

随机推荐

  1. JavaSript 基础学习笔记

    1. 数组 对象数组 var temp = [{"name":"123","age":"18"},{"name ...

  2. Keyboard的显示与隐藏

    一个控制键盘显示与隐藏的工具类分享给大家 public class KeyBoardTool { /** * 假设输入法在窗体上已经显示.则隐藏.反之则显示 * @param context */ p ...

  3. HDU 2732 Leapin' Lizards(拆点+最大流)

    HDU 2732 Leapin' Lizards 题目链接 题意:有一些蜥蜴在一个迷宫里面,有一个跳跃力表示能跳到多远的柱子,然后每根柱子最多被跳一定次数,求这些蜥蜴还有多少是不管怎样都逃不出来的. ...

  4. Project Euler:Problem 88 Product-sum numbers

    A natural number, N, that can be written as the sum and product of a given set of at least two natur ...

  5. JS 正则表达式的位置匹配ZZ

    http://regexpal.com/ 上面这个网站可以用于在线检测JS的正则表达式语法 除了熟知的几个固定字符表示位置: ^ : Match the beginning of the string ...

  6. 连载:面向对象葵花宝典:思想、技巧与实践(30) - SRP原则

    前面具体阐述了"高内聚低耦合"的整体设计原则.但怎样让设计满足这个原则,并非一件简单的事情.幸好各位前辈和大牛已经帮我们归纳总结出来了,这就是"设计原则"和&q ...

  7. C/C++学习:函数指针

    曾经在书上看到函数指针相关的都没怎么重视.可是近期在实际的工作中却派上了用场.所以认真地学习了一遍. 函数指针的申明 申明一个函数指针非常easy,就是将函数申明中的函数名替换为一个指针就可以: C/ ...

  8. Linux就该这么学 20181009(第十二章 SAMBA)

    参考链接https://www.linuxprobe.com Samba 跨平台的文件共享 linux-linux linux-windows /etc/samba/smb.conf 里面 []这个名 ...

  9. 33.Qt模型与视图

    #include "mainwindow.h" #include <QApplication> #include <QAbstractItemModel> ...

  10. datatable dataRow

    DataRow[] Drs = DtStockProduct.Select(Condition11); DtResult = DtStockProduct.Clone(); datatble tabl ...