当前位置: 首页 > news >正文

黄埔建网站公司上海企业服务

黄埔建网站公司,上海企业服务,海外域名注册平台,房产最新消息今天新闻文章目录 说明代码效果 说明 因为业务需要#xff0c;每天都需要按当天的日期创建很多新文件夹。把这种重复又繁重的操作交给Python来做#xff0c;一直是我的目标。先说下要求#xff1a; 默认在桌面新建文件夹。文件夹命名方式#xff0c;“月.日-1”#xff0c;比如7… 文章目录 说明代码效果 说明 因为业务需要每天都需要按当天的日期创建很多新文件夹。把这种重复又繁重的操作交给Python来做一直是我的目标。先说下要求 默认在桌面新建文件夹。文件夹命名方式“月.日-1”比如7.8-17.8-2。7是代表当天的月份不能显示07。8是代表当天的日期不能显示08。-1,-2…是文件夹的序号。序号支持手动输入比方可以自己输入10就创建10个文件夹。要有记忆功能这次输入10以后下次运行程序就默认是10。 再说下思路及步骤 使用Tkinter创建操作界面需要有文件及路径文本框和选择按钮文件夹数量输入框及执行新建按钮显示操作执行过程的列表框。获取当天的月份和日期。按需求的数量创建新文件夹。将最近输入的文件夹数量保存到log.txt文件下次运行程序直接从log.txt取数实现记忆功能。 使用Tkinter创建界面。下面来看看如何获取当天的月份和日期并整理成想要的格式。定义了一个函数get_current_date然后将日期转换成本地时间再分别获取月份和天数并转为整数这样“07”才能变成“7”。最后将月和天用“.”连起来就得到了最终结果。比如今天结果就显示为7.9。 #获取当天的月份和日期整理成想要的格式 from time import time, localtime ,strftime def get_current_date():time_stamp time() # 当前时间的时间戳local_time localtime(time_stamp) #转为本地时间str_time_month int(strftime(%m, local_time))#获取月份并转为整数str_time_day int(strftime(%d, local_time))#获取天数并转为整数return str(str_time_month).str(str_time_day)#整理格式 get_current_date()然后写创建新文件夹的函数create_folders其中传入两个参数即以上处理好的日期date和文件夹数量qty。用for循环根据数量来创建。先将文件夹的名称字符串按需要连接好存入变量folder。然后用if语句判断此目录是否存在若不存在才使用os.makedirs创建若存在则输出“目录已存在”的提示。调用函数实验了一下没问题。 #创建新文件夹 import os def create_folders(date,qty):for i in range(1,qty1):folder D:\\ date - str(i)# 判断是否已经存在该目录if not os.path.exists(folder):# 目录不存在进行创建操作os.makedirs(folder) #使用os.makedirs()方法创建多层目录print(目录新建成功 folder) else:print(目录已存在)date get_current_date() qty 3 create_folders(date,qty)下面定义一个函数save_recent_folder_qty用于将最近使用过的“文件夹数量”保存到日志文件log.txt。先设定好文件的路径及文件名存入变量log_file然后使用写入模式w打开文件将数量qty写入。写好后调用一下就可以在指定的路径下看到这个文件了打开可见里面的内容为“10”。 def save_recent_folder_qty(qty):保存最近的文件夹数量log_file os.getcwd() \\log.txtwith open(log_file, w) as f:recent_qty str(qty)f.write(recent_qty) save_recent_folder_qty(10)然后还需要从上面保存的日志文件中提取最近用过的“文件夹数量”还是定义一个函数get_folder_qty指定路径存入log_file变量。首次运行程序的时候这个日志文件还没有的。所以为避免报错先用if语句判断是否存在。若已存在则直接读取到qty变量中并返回如不存在则返回“0”。写好后也可以调用一下看看是否有问题。 def get_folder_qty():log_file os.getcwd() \\log.txtif os.path.exists(log_file):with open(log_file, r) as f:qty f.readline()return int(qty)else:return 0 a get_folder_qty() print(a)以上准备工作做好后就可以整合到类MainGUI中去了。这个整合基本上跟实例63https://zhuanlan.zhihu.com/p/151754669 差不多下面挑有差异的部分进行说明。首先增加了两个标签self.label_1和self.label_2用于提示文本框中显示的内容分别是“目标目录”和“文件件数量”。还有就是给文本框增加了默认显示的内容。其中StringVar用于跟踪字符串变量方便将其值显示在界面上。将要要显示的内容经StringVar处理传给变量addr然后赋给Entry中的textvariable参数就可以在文本框显示了。同样日志文件log.txt中读取最近使用过的文件夹数量也是这样显示在文本框。 最后将函数跟界面的按钮文本框列表框连接起来就可以开始运行了。 import os from datetime import datetime from time import time, localtime ,strftime from tkinter import Tk,Entry,Button,Listbox,X,Y,END,Scrollbar,RIGHT,BOTTOM,HORIZONTAL,StringVar,Label from tkinter.filedialog import askdirectoryclass MainGUI():def __init__(self):myWindow Tk()myWindow.title(批量新建文件夹)#设置窗口大小myWindow.geometry(590x400)#增加标签self.label_1 Label(myWindow, text 目标目录:)self.label_1.place(x10, y10,width70, height30)self.label_2 Label(myWindow, text文件夹数量:)self.label_2.place(x10, y50,width70, height30)#增加文本框addr StringVar(valueC:\\Users\\xxxx\\Desktop) #文本框默认显示的内容self.input_entry Entry(myWindow, highlightcolorred, highlightthickness1, textvariableaddr)self.input_entry.place(x80, y10,width410, height30)self.btn_in Button(myWindow, text选择目录,command self.select_dir1, width10, height1) self.btn_in.place(x500,y10)folder_quantity str(self.get_folder_qty()) #从日志文件log.txt中读取最近使用过的文件夹数量def_qty StringVar(value folder_quantity)self.folderQty_entry Entry(myWindow, highlightcolorblue, highlightthickness1, textvariabledef_qty)self.folderQty_entry.place(x80, y50,width410, height30)self.btn_exe Button(myWindow, text执行新建,command self.create_folders, width10, height1)self.btn_exe.place(x500,y50)#增加列表框self.result_show Listbox(myWindow,bgAzure) self.result_show.place(x10,y100, width570, height290)self.sbY Scrollbar(self.result_show,commandself.result_show.yview)#在列表框中增加Y轴滚动条self.sbY.pack(sideRIGHT,fillY)self.result_show.config(yscrollcommand self.sbY.set)self.sbX Scrollbar(self.result_show,commandself.result_show.xview,orient HORIZONTAL)#在列表框中增加X轴滚动条self.sbX.pack(sideBOTTOM,fillX)self.result_show.config(xscrollcommand self.sbX.set)myWindow.mainloop()def select_dir1(self):self.input_entry.delete(0, END)self.input_entry.insert(0, askdirectory(initialdir D:\\))def create_folders(self):date self.get_current_date() #获取日期qty int(self.folderQty_entry.get()) #获取文本框中文件夹数量并转为整数for i in range(1,qty1):folder self.input_entry.get() \\ date - str(i)# 判断是否已经存在该目录if not os.path.exists(folder):# 目录不存在进行创建操作os.makedirs(folder) #使用os.makedirs()方法创建目录f f目录新建成功{folder} # 创建一个显示项self.result_show.insert(end, f) #将结果添加到列表框中else:f f目录已存在{folder} # 创建一个显示项self.result_show.insert(end, f) #将结果添加到列表框中f -*100 #创建分割线self.result_show.insert(end, f) # 将分割线添加到列表框f f程序运行完成请关闭窗口退出.# 创建一个显示项self.result_show.insert(end, f) # 将结果添加到列表框f *100self.result_show.insert(end, f) # 将以上空格添加到列表框self.save_recent_folder_qty() #保存最新的文件夹数量def get_current_date(self):time_stamp time() local_time localtime(time_stamp) str_time_month int(strftime(%m, local_time))str_time_day int(strftime(%d, local_time))return str(str_time_month).str(str_time_day)def get_folder_qty(self):从log.txt文件中获取最近的文件夹数量若没有则返回0log_file os.getcwd() \\log.txtif os.path.exists(log_file):with open(log_file, r) as f:qty f.readline()return int(qty)else:return 0def save_recent_folder_qty(self):保存最近的文件夹数量log_file os.getcwd() \\log.txtwith open(log_file, w) as f:recent_qty str(self.folderQty_entry.get())f.write(recent_qty) if __name__ __main__:MainGUI()首次运行弹出窗口如下。可见“目标目录”是我们设定好的默认显示值。因为第一次运行还没有日志文件log.txt所以“文件夹数量”是我们设定好的默认值“0”。 选择好“目标目录”并设定好“文件夹数量”后点击“执行新建”需要的文件夹秒秒钟建好。日志文件也将输入的“文件夹数量”自动保存下来了。 代码 import os from datetime import datetime from time import time, localtime ,strftime from tkinter import Tk,Entry,Button,Listbox,X,Y,END,Scrollbar,RIGHT,BOTTOM,HORIZONTAL,StringVar,Label from tkinter.filedialog import askdirectoryclass MainGUI():def __init__(self):myWindow Tk()myWindow.title(批量新建文件夹)#设置窗口大小myWindow.geometry(590x400)#增加标签self.label_1 Label(myWindow, text 目标目录:)self.label_1.place(x10, y10,width70, height30)self.label_2 Label(myWindow, text文件夹数量:)self.label_2.place(x10, y50,width70, height30)#增加文本框addr StringVar(valueC:\\Users\\xxxx\\Desktop) #文本框默认显示的内容self.input_entry Entry(myWindow, highlightcolorred, highlightthickness1, textvariableaddr)self.input_entry.place(x80, y10,width410, height30)self.btn_in Button(myWindow, text选择目录,command self.select_dir1, width10, height1) self.btn_in.place(x500,y10)folder_quantity str(self.get_folder_qty()) #从日志文件log.txt中读取最近使用过的文件夹数量def_qty StringVar(value folder_quantity)self.folderQty_entry Entry(myWindow, highlightcolorblue, highlightthickness1, textvariabledef_qty)self.folderQty_entry.place(x80, y50,width410, height30)self.btn_exe Button(myWindow, text执行新建,command self.create_folders, width10, height1)self.btn_exe.place(x500,y50)#增加列表框self.result_show Listbox(myWindow,bgAzure) self.result_show.place(x10,y100, width570, height290)self.sbY Scrollbar(self.result_show,commandself.result_show.yview)#在列表框中增加Y轴滚动条self.sbY.pack(sideRIGHT,fillY)self.result_show.config(yscrollcommand self.sbY.set)self.sbX Scrollbar(self.result_show,commandself.result_show.xview,orient HORIZONTAL)#在列表框中增加X轴滚动条self.sbX.pack(sideBOTTOM,fillX)self.result_show.config(xscrollcommand self.sbX.set)myWindow.mainloop()def select_dir1(self):self.input_entry.delete(0, END)self.input_entry.insert(0, askdirectory(initialdir D:\\))def create_folders(self):date self.get_current_date() #获取日期qty int(self.folderQty_entry.get()) #获取文本框中文件夹数量并转为整数for i in range(1,qty1):folder self.input_entry.get() \\ date - str(i)# 判断是否已经存在该目录if not os.path.exists(folder):# 目录不存在进行创建操作os.makedirs(folder) #使用os.makedirs()方法创建目录f f目录新建成功{folder} # 创建一个显示项self.result_show.insert(end, f) #将结果添加到列表框中else:f f目录已存在{folder} # 创建一个显示项self.result_show.insert(end, f) #将结果添加到列表框中f -*100 #创建分割线self.result_show.insert(end, f) # 将分割线添加到列表框f f程序运行完成请关闭窗口退出.# 创建一个显示项self.result_show.insert(end, f) # 将结果添加到列表框f *100self.result_show.insert(end, f) # 将以上空格添加到列表框self.save_recent_folder_qty() #保存最新的文件夹数量def get_current_date(self):time_stamp time() local_time localtime(time_stamp) str_time_month int(strftime(%m, local_time))str_time_day int(strftime(%d, local_time))return str(str_time_month).str(str_time_day)def get_folder_qty(self):从log.txt文件中获取最近的文件夹数量若没有则返回0log_file os.getcwd() \\log.txtif os.path.exists(log_file):with open(log_file, r) as f:qty f.readline()return int(qty)else:return 0def save_recent_folder_qty(self):保存最近的文件夹数量log_file os.getcwd() \\log.txtwith open(log_file, w) as f:recent_qty str(self.folderQty_entry.get())f.write(recent_qty) if __name__ __main__:MainGUI()效果
http://www.pierceye.com/news/669050/

相关文章:

  • 网站关键词先后论坛网站在线生成
  • 无为建设局网站安装wordpress xampp
  • 广药网站建设试卷wordpress人力资源模板下载
  • 电商网站规划的开发背景明年做那个网站能致富
  • 网站建设及托管合同wordpress页面批量生成二维码
  • 益阳市住房和建设局 网站哪些网站可做矿机期货
  • 网站开发哪里有html5网站赏析
  • 襄阳网站建设八零后做的网站怎么上传到网上运行
  • 学网站开发培训学校专业集团门户网站建设费用
  • 加快政务公开网站建设知名的摄影网站有哪些
  • 任县网站建设网络公司桐城网站开发
  • linux服务器做网站软装设计图效果图
  • 个人网站可以做商城吗被官方认可赚钱软件
  • 自己可以做网站服务器室内设计整套方案图
  • 网站建设商城网站微信广告代理
  • 创建网站的方案企业营销策划公司
  • 做彩铃的网站个人博客网站建设
  • 正黄集团博弘建设官方网站达州高端网站建设
  • 七台河建设网站wordpress logo制作
  • 怎么设计一个自己的网站番禺网站建设效果
  • 网站哪家做的好淄博网站开发选网泰
  • 网站建设与制作与维护ppt百度广告联盟收益
  • 在线网站建设费用是多少大学生活动策划书模板
  • 动物网站建设wordpress无法跳转正确页面
  • 上海市建设工程 安全协会网站wordpress会员微信支付宝
  • pc网站转换手机网站代码桂林工作网招聘
  • 营销型网站建设的要素怎么建网站赚钱
  • 成都网站建设学习郑州制作网站推荐
  • 网站建设 镇江丹阳php网站开发实例教程代码
  • 佛山外贸网站建设方案专业网站建设系统