最近学校开始讲Python,但程序都是直接在Python终端里运行的,那这样怎么才能写出应用软体呢?像手机或电脑里用的那种一样


写图形界面可以尝试一下 tkinter ,可以写出来一个图形程序,

以下用 Python3 作为示例。

1. tkinter的初始化

tkinter 初始化一个窗口很简单,包含导入就3行代码。

import tkinter as tk

root = tk.Tk()
root.mainloop()

效果像这样:

2. 实践一下

写一个随机生成 1-100 以内随机数的程序,按下按钮来生成

代码如下:

gen_random.py

import tkinter as tk
import random

def gen_random():
"""
使用 random 模块下的 randint 函数生成随机数
:return: 返回 1-100 以内的随机数
"""
return str(random.randint(1, 100))

def control_entry():
# 删除entry里面的内容
entry_random.delete(0, tk.END)

# 向entry插入随机数,随机数由 gen_random 函数生成
entry_random.insert(0, gen_random())

if __name__ == __main__:
# 初始化
root = tk.Tk()

# 图形界面的标题
root.title(随机数生成器)

# 窗口的尺寸,分别对应的宽和高
root.geometry(250x100)

# 文本提示
label_random = tk.Label(root, text=生成 1-100 以内的随机数)

# 随机数展示的entry
entry_random = tk.Entry(root)

# 生成随机数的按钮,按下按钮触发函数
button_gen = tk.Button(
root,
text=生成随机数,
command=control_entry)

# 三个控制项的布局,依次从上到下分布
label_random.pack()
entry_random.pack()
button_gen.pack()

# 保持图形界面不被销毁
root.mainloop()

3. 打包成exe

打包需要 pyinstaller 这个库

pip install pyinstaller

打包

pyinstaller -F gen_random.py

会在当前目录下的 dist 文件下生成一个 gen_random.exe 文件

这样别人的电脑没有安装 Python,也可以运行你写的程序了。


谢邀。答主的问题在于如何根据Python代码生成一个可执行文件。可以使用pyinstaller库来封装我们的python程序,从而实现这个需求。

分享一个本蒟蒻的小小笔记(关于pyinstaller库),若有不足,欢迎在评论区指出。


1.pyinstaller的安装方法

pyinstaller需要在cmd下进行安装,安装指令为:pip install pyinstaller

更新指令为python -m pip install --upgrade pip

2.pyinstaller的作用

pyinstaller的作用是将一段python程序打包成一个运行起来不依靠python解释器的应用程序,把这个打包的文件发送给你的朋友,即使他的电脑上没有python解释器,这个程序也能在他的电脑上运行

3.pyinstaller的用法(常用参数)

想根据一个指定的python文件生成可执行文件,其实只要在python文件所在的目录下打开命令行,然后在命令行下面运行一句话:

pyinstaller -F &

实际操作时,也可以通过cd访问文件夹,再通过dir查询文件夹中的所有文件,再通过cd最终访问到自己想要打包的源代码的根目录,然后再输入命令:pyinstaller -F "文件名"即可;如果要修改图标,比如要给文件「SevenDigitDrawV2.py「附上」curve.ico「的图标,则输入命令:pyinstaller -i curve.ico -F SevenDigitDrawV2.py

打包完成后,运行exe时会出现闪退现象,这时可以在程序运行的末尾添上input()来使窗口运行完主程序后还能停留,为了更加人性化,比如可以在input中添加"Press Enter to End:"

然后要记得定时升级你的pip工具:python -m pip install --upgrade pip


附一个常见的错误:

python用pyinstaller生成exe时报错 TypeError: an integer is required (got type bytes)

解决办法:报错前的pyinstaller是用 pip install pyinstaller 来安装的,改成用 pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz 再安装一次

其它说明:如果电脑中同时存在多个版本的python可能会导致各种问题(比如 「failed to execute script xxx」 、「failed to create process」),如果不是特别熟悉使用python只是为了偶尔使用的话最好把以前安装的多余的python版本删掉或全部删掉重新安装(到官网下载最新的安装程序,网上说32位的兼容性比较好),安装步骤可参考:https://blog.csdn.net/weixin_40844416/article/details/80889165


带有画面的,去搜搜python gui 编程;

封装成exe的,用pyinstaller或者py2exe;

善用搜索


学pyqt5,或者tkinter。就可以写出下面这样的软体了。


你那是学下py语言基础规范,后面可以结合html前端做网页之类


终端里运行的也是python的程序,只是没有图形界面。

如果要做成手机、电脑里的那种图形界面,也就是GUI,python又pyQt可以去了解下


推荐阅读:
相关文章