python制作自动化办公_教你如何用Python制造一款自动化办公软件脚本!下班,下班...
1 PySimpleGUI安装
在命令行/终端输入:pip install pysimplegui,等待安装完成后,进入python环境,输入import PySimpleGUI回车无误后,确认安装成功
2 PySimpleGUI制作简易弹窗界面
PS:如有需要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制造一款自动化办公软件脚本!下班,下班...相关推荐
- python怎么画人像_教你如何用Python画出心目中的自己
原标题:教你如何用Python画出心目中的自己 引言:人脸图像的生成在各个行业有着重要应用,例如刑事调查.人物设计.教育培训等.然而一幅逼真的人脸肖像,对于职业画家也要至少数小时才能绘制出来:对于从未 ...
- python如何画圆环_教你如何用Python制作出好看的动态圆环图、饼图
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 欢迎点击右上角关注小编,除了分享技术文章之外还有很多福利,私信学习资料可以 ...
- python训练营 朋友圈_教你如何用python来弄一个高逼格的朋友圈
小编今天要给大家介绍一个Python库: PIL(Python Image Library) 下面我们用一个实际的例子 看看50行python代码可以做什么神奇的事情 这是小编发的一个朋友圈 切图前是 ...
- python新手入门教程思路-Python新手入门教程_教你怎么用Python做数据分析
Python新手入门教程_教你怎么用Python做数据分析 跟大家讲了这么多期的Python教程,有小伙伴在学Python新手教程的时候说学Python比较复杂的地方就是资料太多了,比较复杂.很多网上 ...
- python怎么下载网络歌曲_教你如何用Python批量下载自己喜欢听得音乐
文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 音乐是生活的调剂品,目前很多的音乐只能播放不能下载.生为技术员的我们,怎么甘心呢? ...
- python excel 打印文档_教你如何用Python轻轻松松操作Excel、Word、CSV,一文就够了,赶紧码住!!!...
原标题:教你如何用Python轻轻松松操作Excel.Word.CSV,一文就够了,赶紧码住!!! 作者:奈何缘浅wyj Python 操作 Excel 常用工具 数据处理是 Python 的一大应用 ...
- 用visio画用例图小人_教你如何用 Python 打飞机 ?
前言:python 除了生孩子 ,啥都会 .包括打飞机 !今天就来教你如何用 python 打飞机 ! 简述 相信你是一个单纯的孩子说的打飞机是指啥意思 ,对吧 ?嗯 ,没毛病 .就是 pygame ...
- python编程怎么建立工程_教你如何用Python脚本快速创建项目
相信初学Cocos2D者对Python还很陌生,今天本篇教程教你如何用Python脚本快速创建项目. 在Cocos2d-x2.1.4以上的版本中,取消了使用vs模版创建项目的方法,开始使用python ...
- 手机版python3h如何自制游戏_教你如何用 Python 写一个小游戏
教你如何用 Python 写一个小游戏 引言 最近 python 语言大火, 除了在科学计算领域 python 有用武之地之外, 在游戏后台等方面, python 也大放异彩, 本篇博文将按照正规的项 ...
最新文章
- linux中if语句s,linux 中 if 语句条件的含义
- 原python基础概念整理_Python从头学之基础概念整理
- 【数据竞赛】DoubleEnsemble--专治硬样本的神奇集成技术。
- 生成对抗网络(GAN)的数学原理全解
- 解决问题 “You don't have permission to access /index.html on this server.”
- Java程序员应在2018年学习的3种JVM语言
- RPC架构简介与原理
- Android使用拖拽控件来布局界面并展示
- 神策分析 Android SDK 网络模块解析 | 数据采集
- GD32F103入门实践(一)配置环境,搭建工程模板,烧写程序
- POE交换机和普通交换机哪里不同?POE交换机和普通交换机哪个好?
- 手机端API框架流程(学习笔记)
- PyTorch 深度学习:60分钟快速入门
- 车辆保险详细说明举例介绍
- python通用管理系统_Python实例---CRM管理系统分析180331
- 手机电池-市场现状及未来发展趋势
- 假设检验基础 R语言
- 2018华为校招机试题目练习
- 万花筒大赛获奖VR电影将亮相VR科学节,约否?
- 关于搜狗输入法如何导入本地词库(超详细版)
热门文章
- 计算机flash忆江南怎么做,幼儿园古诗《忆江南》FLASH课件动画教案
- 中教畅享ITMC国赛高职TB电子商务推广竞赛系统v3.0实训基础教学思路打法
- 创建Dota游戏中的兵营类(Barrack),创建3个兵营,通过控制台为每个兵营定义兵营名称,并指定该兵营需要创建的士兵人数。
- 原厂电源IC芯片HD7100A23E-42HD7100A23E-43HD7100A23F-42HD7100A23F-43HD7100AESH-42 HD7100AESH-43
- Pycharm安装第三方库显示 nothing to show问题
- 龙测科技携手TGO鲲鹏会举办同城学习活动,众圈内大佬齐聚,共探研究效能提升
- 桃花院长:如何找女朋友,有4种方法提升关系
- 阳光电源逆变器实现光伏电站无功电压控制试验成功
- Amaze UI 入门引导
- 【006】Redis主从/哨兵/分片集群docker搭建