教你如何用Python制造一款自动化办公软件脚本!下班,下班

Gerbv 与 Python 协同:实现 Gerber 文件智能分析与制造数据自动化 在PCB设计与制造流程中,Gerber文件作为核心数据载体,承载着制造设备所需的精确几何信息。本文将介绍如何利用开源工具Gerbv结合Python脚本,实现对Gerber文件中定位孔和文字信息的智能识别,并展示如何利用这些识别结果优化制造流程。 阅读详情

1 PySimpleGUI安装

在命令行/终端输入:pip install pysimplegui,等待安装完成后,进入python环境,输入import PySimpleGUI回车无误后,确认安装成功

2 PySimpleGUI制作简易弹窗界面

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

python免费学习资料以及群交流解答点击即可加入

2.1 两种界面设计模式

(1) 单次显示界面(one-shot window)

  • 类似于弹窗,出现一次

  • 常用于提示信息,收集信息

(2)持续显示界面(Persistent window)

  • 持续不断显示,除非用户手动关闭

  • 常作为软件的主界面

2.2 制作弹窗

官网默认的库的缩写为sg,使用时建议保持统一,也是使用sg

弹窗类型:(第一种和第二种是一致的)

  • sg.popup(‘注意!’)

  • sg.popup_ok(‘默认弹窗’)

  • sg.popup_yes_no(‘带Yes和No按钮的弹窗’)

  • sg.popup_cancel(‘带cancel按钮的弹窗’)

  • sg.popup_ok_cancel(‘带OK和cancel按钮的弹窗’)

  • sg.popup_error(‘带红色error按钮的弹窗’)

  • sg.popup_auto_close(‘几秒后自动关闭的弹窗’)

最后一个执行后程序会在2s左右自动退出,除了以上的简单的默认函数外,还可以手动设置参数,相关的参数如下

比如设置一个定制化的小窗口,进行相关参数的添加

sg.popup(
	'这是弹窗',
	title='Hello',
	button\_color=('#A81B0C', '#FFFFFF'),
	background\_color='#F47264',
	line\_width=2,
	custom\_text=' 好的 '
)

输出结果:(第一个参数就是要显示的信息,可以是单个,也可多个字符串,多个字符串时候,默认换行,如果是单个字符串可以通过line_with指定每行的宽度)

当第一个参数是多个字符串时,自动换行显示(由于自动的窗体长宽很小,所以标题就没有看到,但不是代表不显示,下面的示例中就可以看到)

2.3 文字内容弹窗

采用popup_scrolled()方法,括号中添加要显示的内容即可

text = '''大家好,
我们一起来学习PySimpleGUI制作简单的图形用户界面。'''
sg.popup\_scrolled(text,title='Hello')

输出结果为:(这里的标题就正常的显示出来了)

这个文字内容弹窗里面也有相关的设置参数,可以根据自己的需要进行设置,参数如下:(注意之前的弹窗的参数也可以在这类弹窗中使用,比如刚刚用的title)

2.4 获取用户输入的弹窗

采用popup_get_text()方法,括号内容有点类似input()语句中的提示语,提醒用户输入

text1 = sg.popup\_get\_text('请输入文字1')
print(text1)
text2 = sg.popup\_get\_text('请输入文字2')
print(text2)

输出结果为:(当点击Ok时候控制台输出端就会获取到用户输入的文字,如果是点击Cancel,输出端为None,这里执行了两次用户输入弹出的指令,当第一次输入后点击Ok会自动弹出第二个窗口)

该类弹窗也有自己特定的参数供选择,比如既然进行输入的操作,有时输入密码时候就不希望别人看到,就可以采用输入的显示方式,如下

测试进行密码隐藏输入,可以直接顺势将用户输入的密码也以弹窗的形式展现

2.5 文件选择弹出窗口

直接采用sg.popup_get_file()方法,括号里面的内容也是输入的提示语

选择后就会把详细的地址直接显示在输入框中,如下

那么同样该类弹出也有自己的特有属性参数设置,具体如下。里面的每个参数几乎都是超级常用的参数,可以自行测试一下。

默认后缀,这个参数也是常用的,比如在sublime中点击另存为时候,本身是py文件,在给文件命名的时候只需要输出文件名,后缀自动给添加上去了。

2.6 文件夹选择窗口

采用sg.popup_get_folder()方法,括号里面的内容也是输入的提示语。执行程序后会弹出选择文件的窗口,鼠标选择后就会把文件夹的路径添加到输入框中

2.7 进度条弹窗

采用sg.one_line_progress_meter()方法,括号中输入相关的参数设置内容

for i in range(1000):
	sg.one\_line\_progress\_meter(
		'进度条',
		i + 1,
		1000,
		'该进度条key',
		'这是一个进度条'
	)

输出结果为:(会进行动态加载,直到达到100%)

当然此类弹窗也有自己特有的参数设置,如下。比如常见的设置竖直的还横向的,滚动条的上下限等。

比如尝试一下不同参数的组合输出

for i in range(1, 1000):
	sg.one\_line\_progress\_meter(
		'进度条',
		i + 1,
		1000,
		'该进度条key',
		'这是一个进度条',
		orientation='h',
		bar\_color=('#F47264', '#FFFFFF')
	)

输出结果为:

3 制作简易压缩软件

3.1 功能需求

  • 软件运行后弹出窗口让用户选择一个文件夹

  • 用户选择后再弹出窗口让用户选择压缩包保存的位置和名称

  • 用户输入完成后将该文件夹内所有的文件进行压缩打包

  • 完成压缩后再弹出一个窗口告诉用户这个压缩包的体积大小

3.2 功能拆解

(1)软件运行后弹出窗口让用户选择一个文件夹

  • popup_get_folder()

(2)用户选择后再弹出窗口让用户选择压缩包保存的位置和名称

  • popup_get_file()

  • save_as=True

  • default_extension = ‘zip’

(3)用户输入完成后将该文件夹内所有的文件进行压缩打包

  • zipfile模块

(4)完成压缩后再弹出一个窗口告诉用户这个压缩包的体积大小

  • os.stat()读取文件信息

  • popup()弹窗显示数据

3.3 全部代码

参考代码:(主要是细节部分,对于压缩路径的设置,需要进行处理一下,不然最后解压缩的会出现很多层级的不必要文件夹)

import PySimpleGUI as sg
import zipfile
import os


folder = sg.popup\_get\_folder('请选择要压缩的文件夹')
zip\_path = sg.popup\_get\_file(
	'请选择要保存的压缩包位置',
	save\_as=True,
	default\_extension='zip',
	file\_types=(('压缩包', '.zip'), )
)

with zipfile.ZipFile(zip\_path, 'w') as zipobj:
	for file in os.scandir(folder):
		zipobj.write(file.path, file.path.replace(folder, '.'))

zip\_size = os.stat(zip\_path).st\_size // 1024
sg.popup(f'压缩包体积大小为:{zip\_size} KB')

输出结果演示如下:(完美,撒花✿✿ヽ(°▽°)ノ✿)

学习资源推荐

除了上述分享,如果你也喜欢编程,想通过学习Python获取更高薪资,这里给大家分享一份Python学习资料。

😝朋友们如果有需要的话,可以V扫描下方二维码联系领取

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

因篇幅有限,仅展示部分资料,添加上方即可获取
一、Python学习路线

image-20230619144606466

python学习路线图1

二、Python基础学习
1. 开发工具

2. 学习笔记

在这里插入图片描述

3. 学习视频

在这里插入图片描述

三、Python小白必备手册

图片

四、数据分析全套资源

在这里插入图片描述

五、Python面试集锦
1. 面试资料

在这里插入图片描述

在这里插入图片描述

2. 简历模板

在这里插入图片描述

😝朋友们如果有需要的话,可以V扫描下方二维码联系领取

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

因篇幅有限,仅展示部分资料,添加上方即可获取
七夕不懂浪漫?Python 帮你制造惊喜!!! 接天庭通知:今年七夕,由于牛郎织女没有接种新冠疫苗,没有核酸检测报告,暂时不能相见,故今年七夕取消,也请大家不要聚集,烛光晚餐在家吃也挺好,牛郎织女作表率,争做全网好市民。 所以作为程序员中的一员,怎么能不用技术给女朋友制造惊喜呢? 今天的文章是教各位朋友们如何用技术制造浪漫,如何给自己的女神或女朋友表白!!! 制作爱心发射小人 importturtle importtime fromturtleimportmainloop,hideturtle defclear_all():... 阅读详情

相关推荐

Python自动化Genesis脚本:PCB/CAM工程师效率提升实战指南

自动化脚本技术是提升制造业软件操作效率的核心方法,通过将重复性人工操作转化为可编程指令,实现流程标准化与错误率降低。其原理在于识别软件操作模式并封装为可执行代码,在PCB/CAM领域具有显著技术价值,能够将工程师从繁琐的图形界面操作中解放,专注于工艺优化。应用场景广泛覆盖钻孔补偿调整、层别对齐检查、线宽批量修改等CAM前处理环节。本文聚焦Genesis软件与Python的结合实践,针对'windows脚本命令闪退'等常见问题提供系统排查方案,并详细解析通过Python调用脚本文件、COM接口、GUI自动化三

weixin_33724570的博客 490

【实用原创】20个Python自动化脚本,解放双手、事半功倍

在当今的快节奏工作环境中,自动化不再是一种奢侈,而是提高效率和精确性的必需手段。Python,以其易于学习和强大的功能而闻名,成为实现各种自动化任务的理想选择。无论是数据处理、报告生成,还是日常的文件管理,一个简单但有效的Python脚本就能大幅减轻您的工作负担。在本文中,我们将探索如何使用Python来创建多个自动化脚本,它不仅能够节省您的时间,还可以提高工作的准确率和效率。我们先来看第一个自动化脚本。

Python栈 4577

Python领域制造业的Python应用

制造业正经历着数字化转型的浪潮,而Python作为一门多功能编程语言,在这一转型过程中扮演着越来越重要的角色。本文旨在全面介绍Python在制造业中的应用场景、技术实现和最佳实践,帮助制造业技术人员和软件开发人员了解如何利用Python提升生产效率、优化流程并实现智能制造。本文将首先介绍Python在制造业中的核心应用领域,然后深入探讨关键技术实现,包括设备接口、数据处理和机器学习应用。随后将通过实际案例展示Python在制造业中的具体应用,最后讨论未来发展趋势和挑战。工业4.0。

AI Python 编程之道的博客 1387

一个神奇的Python库:PyAutoGUI,玩转微信及各种软件自动化

今天和大家分享一个超赞的自动化库–PyAutoGUI,PyAutoGUI 可以让 Python 脚本控制鼠标和键盘,通过代码操作鼠标、键盘自动与其他应用程序交互,该Python包支持在 Windows、macOS 和 Linux 上运行。

Saki_Python的博客 2028

CAM自动化助力PCB智能制造

<think>我们只需要根据内容生成摘要,限制≤150字。内容是关于CAM智能化助力PCB智能制造,强调系统化、标准化、自动化等。摘要要简洁。</think>本文围绕PCB制前工程自动化,提出以“系统化、标准化、自动化、智能化、无人化”为核心思路。通过分拆任务、统一标准、强化培训,构建CAM自动化系统,提升效率与品质,推动智能制造落地。

t358143105的博客 1万+

粒子滤波在基于误差状态量的INS/GNSS组合导航中的使用技巧-On Particle Filter based Error-State INS/GNSS Intergrated Navigation

本文面向以15维惯导(INS)误差为状态量,3维位置误差为量测量的INS/GNSS组合导航系统,​在西工大严恭敏老师的开源工具箱中PF相关库函数基础上实现基于粒子滤波(PF)的惯导误差状态量的递推估计,设计了粒子重置环节并强调了其在本特定场景下的重要性。

I33D33I的博客 1743

15个Python脚本,让你从入门到精通

这十五个脚本涵盖了一系列基础的Python概念,并为初学者提供了坚实的基础。通过这些项目的实践,新程序员可以建立起信心,并逐渐解决Python中更复杂的问题。

GLB_0627的博客 3745

5G NR PDCCH实战解析:从DCI格式到CORESET配置的完整指南

本文深入解析5G NR PDCCH的实战配置,涵盖DCI格式选择、CORESET配置及Search Space优化等关键内容。基于3GPP R16标准,提供现网部署中的典型问题解决方案,如覆盖边缘失步、多用户调度冲突等,帮助提升控制信令传输效率。特别针对5G NR PDCCH的灵活资源分配和自适应编码机制进行详细探讨。

weixin_29231263的博客 500

10个实用Python脚本,轻松掌握编程技巧!

今天为大家精选了Python入门必备的10个实用脚本,从基础语法到日常应用,通过生活化的案例帮助零基础读者快速上手。

m0_75067629的博客 2076

吃透Chisel语言.02.Chisel+VS Code+Ubuntu/WSL2开发环境搭建与使用

既然是学Chisel语言,那肯定得先把环境配置好,磨刀不误砍柴工嘛。而且有个测试环境的话,在后期的学习过程中自己去试运行代码段可以加深学习效果。这里推荐使用Ubuntu或者基于WSL2(Windows Subsystem Linux 2)的Ubuntu,本人使用的是WSL2上的Ubuntu 20.04.3 LTS,在使用体验上与Ubuntu几乎没有区别,且能同时使用Windows提供的诸多便利。...

github-3rr0r的博客 8448

基于STM32的频率计(采用外部中断的方式)

前言 最近在了解电赛相关的东西,和指导老师交流一下,我决定先从最简单的频率计做起。 频率计是来检测信号的频率的,在做频率计的时候可以用信号发生器发出的信号来进行测试。 原理 这是最基础的方波,我们可以通过检测上升沿的方式来测量其频率。从周期的角度出发连续两个上升沿的时间就是这个方波的周期,那这个周期分之一就是这个方波的频率了。 在思考了一段时间~~(我是萌新。。)~~ 我觉得有两个方法可以实现,第一个是采用stm32定时器的输入捕获功能,第二个就是用外部中断来实现这个功能。正如标题,我这次采用外部中断的方

qq_45784922的博客 6171

用Python做一个游戏辅助脚本,完整编程思路分享!

学习这样一个游戏辅助脚本,对于个人培养编程兴趣也是有很多帮助的,在工作之余不失为一个好的消遣方式,以后会多向这些方向研究学习。本案例仅仅是截图、比较图片和模拟鼠标点击,我觉得还可以更加强大,而且还不局限于游戏这样一个领域,相信大家应该见过自动发QQ消息的软件吧,我觉得这完全可以做。还有很多模拟操作可以实现:鼠标滚轮,左右键、键盘输入等。

2301_78095812的博客 6513

用AI助手Cursor轻松自动生成流程图

通过 Cursor + Mermaid,我们可以快速、准确地自动生成流程图,上面演示的例子部分流程图可能比较丑,我们可以通过流程图软件导入Mermaid代码,然后手动进行微调就可以了,如果你对美观要求不是特别多,可以直接用,这将极大地提升代码可视化和架构设计的效率。

呱牛 Just do IT 1941

python生产脚本_教你如何用Python制造一款自动化办公软件脚本!下班,下班

(2)持续显示界面(Persistent window)持续不断显示,除非用户手动关闭常作为软件的主界面2.2 制作弹窗官网默认的库的缩写为sg,使用时建议保持统一,也是使用sg弹窗类型:(第一种和第二种是一致的)sg.popup('注意!')sg.popup_ok('默认弹窗')sg.popup_yes_no('带Yes和No按钮的弹窗')sg.popup_cancel('带cancel按钮的弹...

weixin_39609770的博客 265

Machine Unlearning: A Survey

机器学习已经引起了广泛的关注,并发展成为一种使能技术,用于广泛的高度成功的应用,如智能计算机视觉、语音识别、医疗诊断等。然而,由于隐私、可用性和/或被遗忘权,一些特定样本的信息需要从称为机器遗忘的模型中删除,这就产生了一种特殊的需求。这项新兴技术因其创新性和实用性而引起了学术界和工业界的极大兴趣。与此同时,这个雄心勃勃的问题导致了许多旨在应对其挑战的研究工作。据我们所知,没有任何研究分析过这一复杂的主题,也没有比较过现有的遗忘解决方案在不同场景下的可行性。因此,通过这项调查,我们旨在了解遗忘技术的关键概念。

c_cpp_csharp的专栏 1159

【Unity】 预制体Prefab使用说明

在 Unity 中,Prefab 是一个可以预先制作并重复使用的 GameObject 或组件集合,Prefab 中的 GameObject 可以有子对象和其他组件。

灵境引路人 2852

python制作自动化办公_教你如何用Python制造一款自动化办公软件脚本!下班,下班...

1 PySimpleGUI安装在命令行/终端输入:pip install pysimplegui,等待安装完成后,进入python环境,输入import PySimpleGUI回车无误后,确认安装成功2 PySimpleGUI制作简易弹窗界面PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取2.1 两种界面设计模式(1) 单次显示界面(one-shot window)类似于弹窗,...

weixin_39611072的博客 688

Altium Designer(AD24/25)导入DXF或DWG结构文件的方法

DXF(Drawing Exchange Format)和DWG(Drawing)是两种常见的CAD(计算机辅助设计)文件格式,常用于结构和硬件之间的沟通。本文介绍Altium Designer(AD24/25)导入DXF或DWG结构文件的方法。

fydar的博客 1452

【python实例】自动化办公软件脚本

今天我来给大家分享一下,如何用Python来制造一款自动化办公软件脚本。这个过程既简单又有趣,适合各种水平的编程爱好者。我们还会借助一个非常好用的开源框架——PlugLink,来实现这一目标。

AI心易行者 780

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

用Python编写Genesis2000&InCAM&InCAMPro脚本

本文介绍了使用Python脚本自动化在PCB制造CAM软件(Genesis2000/InCAM/InCAMPro)中添加板边定位孔的实现方法。首先分析了业务需求:在panel模块中自动添加生产所需的工具孔,包括通孔层、防焊层开窗、线路层无铜等设计要求。然后详细说明了实现步骤:1)配置脚本语言环境;2)获取软件指令参数;3)按流程执行作业。重点展示了代码实现过程,包括环境检测、层别判断和定位孔添加功能,最终实现了在板边四个角落自动添加符合生产要求的工具孔。该脚本可显著提高PCB制造前工程的设计效率和质量。

t358143105的博客 2552

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

python运维自动化脚本案例,python自动化运维开发

随着大数据和人工智能的发展,Python语言得到了广泛的使用,当前Python语言的上升趋势还是比较明显的,在不少语言排行榜上Python语言也都名列前茅,所以学习Python语言的就业前景还是不错的。

2401_82891588的博客 630

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

上一篇: 教你如何用Python制造一款自动化办公软件脚本!下班,下班
下一篇: 6个 Python 办公黑科技,工作效率提升100倍!(附代码)
大模型应用场景
博客等级 码龄5年 7669粉丝 1350原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值