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

日本可以自己做网站吗百度账号登录个人中心

日本可以自己做网站吗,百度账号登录个人中心,一佰互联自助建站,wordpress评论已关闭自动化:批量文件重命名 1、前言 2、效果图 3、源码 一、前言 今天来分享一款好玩的自动化脚:批量文件重命名 有时候呢,你的文件被下载下来文件名都是乱七八糟毫无规律,但是当时你下载的时候没办法重名或者你又不想另存为重新重…

自动化:批量文件重命名

1、前言
2、效果图
3、源码

一、前言

今天来分享一款好玩的自动化脚:批量文件重命名
有时候呢,你的文件被下载下来文件名都是乱七八糟毫无规律,但是当时你下载的时候没办法重名或者你又不想另存为重新重命名。
比如:下载下来的照片每一个文件名字系统给你安排的都是系统自身的喜好
在这里插入图片描述

所以它来了,一次性完成。

二、效果

在这里插入图片描述

三、源码

这里有一个智能家居项目(毕设)可以看看(开源:码、论、PPT)

import os
import tkinter as tk
from tkinter import ttk, filedialog, messagebox
from pathlib import Pathclass BatchRenameApp:def __init__(self, root):self.root = rootself.root.title(" 批量文件重命名工具 v1.0")self.root.geometry("800x600")# 变量初始化self.folder_path = tk.StringVar()self.prefix = tk.StringVar(value="")self.suffix = tk.StringVar(value="")self.start_num = tk.IntVar(value=1)self.ext_filter = tk.StringVar(value="*")self.dry_run = tk.BooleanVar(value=False)self.file_list = []# 创建UI组件self.create_widgets()def create_widgets(self):# 顶部框架 - 文件夹选择和基本信息top_frame = ttk.LabelFrame(self.root, text="文件夹设置", padding=(10, 5))top_frame.pack(fill=tk.X, padx=10, pady=5)ttk.Label(top_frame, text="目标文件夹:").grid(row=0, column=0, sticky=tk.W)ttk.Entry(top_frame, textvariable=self.folder_path, width=50).grid(row=0, column=1, padx=5)ttk.Button(top_frame, text="浏览...", command=self.browse_folder).grid(row=0, column=2)# 中间框架 - 重命名规则设置middle_frame = ttk.LabelFrame(self.root, text="重命名规则", padding=(10, 5))middle_frame.pack(fill=tk.X, padx=10, pady=5)ttk.Label(middle_frame, text="文件名前缀:").grid(row=0, column=0, sticky=tk.W)ttk.Entry(middle_frame, textvariable=self.prefix).grid(row=0, column=1, padx=5, pady=5, sticky=tk.W)ttk.Label(middle_frame, text="文件名后缀:").grid(row=1, column=0, sticky=tk.W)ttk.Entry(middle_frame, textvariable=self.suffix).grid(row=1, column=1, padx=5, pady=5, sticky=tk.W)ttk.Label(middle_frame, text="起始编号:").grid(row=2, column=0, sticky=tk.W)ttk.Spinbox(middle_frame, textvariable=self.start_num, from_=1, to=9999).grid(row=2, column=1, padx=5, pady=5,sticky=tk.W)ttk.Label(middle_frame, text="文件类型:").grid(row=3, column=0, sticky=tk.W)ttk.Entry(middle_frame, textvariable=self.ext_filter).grid(row=3, column=1, padx=5, pady=5, sticky=tk.W)ttk.Checkbutton(middle_frame, text="仅预览(不实际修改)", variable=self.dry_run).grid(row=4, column=0,columnspan=2, pady=5)# 底部框架 - 操作按钮和文件列表bottom_frame = ttk.Frame(self.root)bottom_frame.pack(fill=tk.BOTH, expand=True, padx=10, pady=5)button_frame = ttk.Frame(bottom_frame)button_frame.pack(fill=tk.X, pady=5)ttk.Button(button_frame, text="扫描文件", command=self.scan_files).pack(side=tk.LEFT, padx=5)ttk.Button(button_frame, text="预览重命名", command=self.preview_rename).pack(side=tk.LEFT, padx=5)ttk.Button(button_frame, text="执行重命名", command=self.execute_rename).pack(side=tk.LEFT, padx=5)# 文件列表树状视图self.tree = ttk.Treeview(bottom_frame, columns=("new_name", "status"), show="headings")self.tree.heading("#0", text="原始文件名")self.tree.heading("new_name", text="新文件名")self.tree.heading("status", text="状态")vsb = ttk.Scrollbar(bottom_frame, orient="vertical", command=self.tree.yview)hsb = ttk.Scrollbar(bottom_frame, orient="horizontal", command=self.tree.xview)self.tree.configure(yscrollcommand=vsb.set, xscrollcommand=hsb.set)self.tree.pack(side=tk.LEFT, fill=tk.BOTH, expand=True)vsb.pack(side=tk.RIGHT, fill=tk.Y)hsb.pack(side=tk.BOTTOM, fill=tk.X)def browse_folder(self):folder_selected = filedialog.askdirectory()if folder_selected:self.folder_path.set(folder_selected)self.scan_files()def scan_files(self):folder = Path(self.folder_path.get())if not folder.exists():messagebox.showerror(" 错误", "文件夹不存在!")returnext = self.ext_filter.get().strip()pattern = f"*.{ext}" if ext != "*" else "*"try:self.file_list = sorted([f for f in folder.glob(pattern) if f.is_file() and not f.name.startswith('.')])self.update_file_list()messagebox.showinfo(" 完成", f"找到 {len(self.file_list)}  个文件")except Exception as e:messagebox.showerror(" 错误", f"扫描文件时出错: {str(e)}")def update_file_list(self):self.tree.delete(*self.tree.get_children())for i, file in enumerate(self.file_list, start=self.start_num.get()):new_name = f"{self.prefix.get()}{i}{self.suffix.get()}{file.suffix}"self.tree.insert("", tk.END, text=file.name, values=(new_name, "待处理"))def preview_rename(self):if not self.file_list:messagebox.showwarning(" 警告", "请先扫描文件!")returnself.dry_run.set(True)self.update_file_list()messagebox.showinfo(" 预览", "已生成重命名预览,请查看文件列表")def execute_rename(self):if not self.file_list:messagebox.showwarning(" 警告", "请先扫描文件!")returnif self.dry_run.get():messagebox.showinfo(" 信息", "当前处于预览模式,不会实际修改文件")returnif not messagebox.askyesno(" 确认", f"确定要重命名 {len(self.file_list)}  个文件吗?"):returnsuccess_count = 0for i, file in enumerate(self.file_list, start=self.start_num.get()):new_name = f"{self.prefix.get()}{i}{self.suffix.get()}{file.suffix}"new_path = file.with_name(new_name)try:file.rename(new_path)self.tree.item(self.tree.get_children()[i - self.start_num.get()],values=(new_name, "成功"))success_count += 1except Exception as e:self.tree.item(self.tree.get_children()[i - self.start_num.get()],values=(new_name, f"失败: {str(e)}"))messagebox.showinfo(" 完成", f"操作完成!\n成功: {success_count}\n失败: {len(self.file_list) - success_count}")self.file_list = []  # 清空文件列表,防止重复操作if __name__ == "__main__":root = tk.Tk()app = BatchRenameApp(root)root.mainloop()
http://www.dtcms.com/wzjs/102517.html

相关文章:

  • 网站建设动图代码360收录提交
  • 学校网站建设教程百度站长工具排名
  • 仪征网站建设整站优化要多少钱
  • 做网站需要注意多少页百度推广竞价排名
  • 邢台做企业网站制作网站要找什么公司
  • 郑州大学动态网站开发考试答案百度新闻排行榜
  • 做网站用宋体有版权问题吗成全在线观看免费高清动漫
  • 深圳建设局网站电商运营自学网站
  • 百度站长平台链接网络工程师是干什么的
  • 电子商务网站开发需要注意问题短网址生成网站
  • 做淘客网站品牌营销策划公司哪家好
  • 怎么做钓鱼网站生成做网站的步骤
  • 企业定制网站建设公司什么是口碑营销
  • 婚恋网站开发平台代理招商线上推广活动有哪些
  • 做水果网站用什么域名什么软件可以找客户资源
  • 深圳网站建设哪个平台好网页搜索排名提升
  • 关于国际贸易的网站网络整合营销理论
  • 网站建设列表销售外包公司
  • cnd中国室内设计网排名优化
  • 安庆做网站哪个公司好seo快速排名关键词
  • 做网站是什么专业什么工作个人建网站需要多少钱
  • 杭州文化传媒类高端网站建设公司google app
  • 在网站怎么做收款二维码合肥seo公司
  • dz论坛中英文网站怎么做百度地图人工电话
  • python做简单的网站如何进行品牌宣传与推广
  • 怎样建立网站的快捷方式白山seo
  • 金山石化网站建设杭州网站
  • 微信平台可以做微网站吗佛山网页搜索排名提升
  • 那个网站有免费模板百度网站关键词优化
  • 无锡网站建设网站百度一下百度一下你就知道