版本更新 1.1.1
需求更新:
1.截图的命名方式为 :对应表格的第几行 + 所切换的语言 + 匹配结果 (✔)
2.Excel需复制原版内容再进行写入 (✔)
3.可执行程序exe,需要提示当前语言切换进度(例如:3/88 表示一共有88个语言需要切换,当前为第三个)
4.每个文件都要有独立的文件夹,最好每次会自动新建 (✔)
5.excel写入超链接,点击可以查看结果图片的截图(✔)
版本 1.1.1 笔记
把excel复制到myExcel中:
1.进入当前文件夹执行cmd命令,cmd获取当前文件夹的路径(这样再别的电脑别的盘符下面也能找到对应文件)
chdir #获取当前目录的路径
2.进行复制(两种方式,一种是绝对路径,一种是相对路径,推荐相对路径)
2.1 绝对路径复制 copy 被复制的文件路径 需要复制到的目录路径
D:\Y_Script\language_draft_exe01>copy D:\Y_Script\language_draft_exe01\myExcel\Test.xlsx D:\Y_Script\language_draft_exe01\resultExcel\ 已复制 1 个文件。
2.2 相对路径复制 copy 当前目录的相对路径被复制文件目录 当前目录的相对路径目标文件夹目录后面直接加 -Y会直接覆盖不会有提示
D:\Y_Script\language_draft_exe01>copy .\myExcel\Test.xlsx .\resultExcel\ 覆盖 .\resultExcel\Test.xlsx 吗? (Yes/No/All): yes 已复制 1 个文件。
D:\Y_Script\language_draft_exe01>copy .\myExcel\Test.xlsx .\resultExcel\ /Y 已复制 1 个文件。 #这样就直接覆盖,不会有提示
2.3 补充知识,如何查看帮助 比如我要查看copy的帮助,直接输入 copy/?
D:\Y_Script\language_draft_exe01>copy/? 将一份或多份文件复制到另一个位置。 COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B ] source [/A | /B] [+ source [/A | /B] [+ ...]] [destination [/A | /B]] source 指定要复制的文件。 /A 表示一个 ASCII 文本文件。 /B 表示一个二进位文件。 /D 允许解密要创建的目标文件 destination 为新文件指定目录和/或文件名。 /V 验证新文件写入是否正确。 /N 复制带有非 8dot3 名称的文件时, 尽可能使用短文件名。 /Y 不使用确认是否要覆盖现有目标文件 的提示。 /-Y 使用确认是否要覆盖现有目标文件 的提示。 /Z 用可重新启动模式复制已联网的文件。 /L 如果源是符号链接,请将链接复制 到目标而不是源链接指向的实际文件。 命令行开关 /Y 可以在 COPYCMD 环境变量中预先设定。 这可能会被命令行上的 /-Y 替代。除非 COPY 命令是在一个批处理脚本中执行的,默认值应为 在覆盖时进行提示。 要附加文件,请为目标指定一个文件,为源指定 数个文件(用通配符或 file1+file2+file3 格式)。
python中连续执行cmd命令
# &&符号表示执行第一个命令成功再执行第二个命令 os.system(r"cd.. && chdir && copy .\myExcel\ .\resultExcel\ /Y")
python读取配置文件
配置文件如下所示:config.ini
[language&input] #The Number is language&input index languageindex = 2 [systemUpdate] #The Number is systemUpdate last index Updateindex = 3
读取[language&input]下所有的键:self.cf.options("language&input") 读取[language&input]下所有的键对:self.cf.items("language&input") class RC(): def __init__(self): pass def readConfig(self): self.cf = configparser.ConfigParser() self.cf.read("./setting/config.ini",encoding="utf-8-sig") # 读取配置文件 def getLanguageindex(self): self.readConfig() languageindex = self.cf.get("language&input", "languageindex") #获取[language&input]中languageindex对应的值 return int(languageindex)-1 def getUpdateindex(self): self.readConfig() Updateindex = self.cf.get("systemUpdate", "Updateindex") # 获取[systemUpdate]中Updateindex对应的值 return int(Updateindex)
python中log记录
def savelog(self): path = "{}\main.log".format(self.makeFolderPath) logging.basicConfig(level=logging.DEBUG, # 控制台打印的日志级别 filename=path, filemode='w', ##模式,有w和a,w就是写模式,每次都会重新写日志,覆盖之前的日志 # a是追加模式,默认如果不写的话,就是追加模式 format= '%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s' # 日志格式 )