【2021.1.21】python学习资料总结
1 python程序打包成exe可执行文件
1.1 综述
学习参考网址:
https://www.cnblogs.com/valorchang/p/11357358.html
https://www.cnblogs.com/mini-monkey/p/11195309.html
https://zhuanlan.zhihu.com/p/87211459
https://www.cnblogs.com/jackzz/p/9431923.html
https://blog.csdn.net/CholenMine/article/details/80964272
环境:python3、pyinstaller
下载方式:win+R — 输入cmd+enter — 输入命令pip install pyinstaller
打包exe程序:(分单文件与多文件,大致步骤如下)
- 找到需要打包程序的目录;
- 打包文件,pyinstaller -F xxx.py(xxx.py,打包的文件);
- 打包成功后项目中新增dist文件夹,里面存放打包好的exe文件;
1.2 单文件
单个.py文件打包命令格式如下:
pyinstaller -F -w --icon=xxx.ico main.py --noconsole
其中,-F表示生成单exe可执行文件,-w表示窗体程序,–icon是设置exe的显示图标,'main.py’是程序的入口,–noconsole表示不展示cmd窗口,反过来想看cmd窗口就改成–console。
-F 表示生成单个可执行文件;
-D –onedir 创建一个目录,包含 exe 文件,但会依赖很多文件(默认选项);
-w 表示去掉控制台窗口,这在 GUI 界面时非常有用。如果是命令行程序的话,就把这个选项删除;
-c –console, –nowindowed 使用控制台,无界面 (默认);
-p 表示你自己自定义需要加载的类路径,一般情况下用不到;
-i 表示可执行文件的图标。
1.3 多文件
- 尽量把打包后的文件放在英文目录下,多个.py文件打包命令格式如下:
pyinstaller [主文件] -p [其他文件1] -p [其他文件2] --hidden-import [自建模块1] --hidden-import [自建模块2]
- 使用pyinstaller打包的时候,仅打包.py文件,其余依赖项只需在打包完成后,拷入打包生成的根目录即可。
2 yum源代码查看
学习参考网址:
https://www.oschina.net/p/yum?hmsr=aladdin1e1
https://github.com/rpm-software-management/dnf
https://github.com/rpm-software-management/yum
本来想下载yum源代码,但是我看到github中yum的README.md里面写着该项目已经弃用,让我们使用DNF来代替。但是我还是想参考一下yum里面的一些代码。
3 Linux系统基本操作
学习参考网址:
https://www.runoob.com/linux/linux-tutorial.html
这个网址比较全面,包括了LInux的简介、安装、相关命令的使用等等。
Linux yum简介
yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。
基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
yum常用命令:
-
列出所有可更新的软件清单命令:yum check-update
-
更新所有软件命令:yum update
-
仅安装指定的软件命令:yum install <package_name>
-
仅更新指定的软件命令:yum update <package_name>
-
列出所有可安裝的软件清单命令:yum list
-
删除软件包命令:yum remove <package_name>
-
查找软件包命令:yum search
-
清除缓存命令:
yum clean packages: 清除缓存目录下的软件包 yum clean headers: 清除缓存目录下的 headers
yum clean oldheaders: 清除缓存目录下旧的 headers yum clean, yum clean all (=
yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的 headers
4 Python调用Linux命令
学习参考网址:
https://blog.csdn.net/u013066730/article/details/73457463
https://www.jb51.net/article/56490.htm
os.system:使用system模块执行linux命令时,如果执行的命令没有返回值res的值是256;如果执行的命令有返回值且成功执行,返回值是0。
……
os.popen :popen模块执行linux命令。返回值是类文件对象,获取结果要采用read()或者readlines()
5 安卓程序自动更新模块的实现方法
学习参考网址:
https://www.jb51.net/article/90598.htm
- 检测网路是否连接(判断离线还是网络);
- 开机自启动;
- 检测是否有需要更新的软件;
- 守护进程?反正是后台进行的程序,设置轮询;
- 哪里存放新版本旧版本软件的信息;
- 怎么提示,提示文字的风格设置;
- 连接服务器进行更新;
- 更新完成进行提示;