写在前面
最近有朋友问我一个问题,说他学了一段时间的编程了,现在却只会在命令行里打印东西,如何写出一个可以安装的应用软件呢?这个问题应该是很多初学者都遇到过,市面上的书籍都会从最基础的语法开始教起,但是很少会有人以简单的方式来说明如何从零开始做一个应用软件。今天我们以 Python 语言为例,写一个软件包。
你需要具备的知识
-
可以写简单的 python 代码;
-
知道依赖包的运用;
环境依赖
-
pyinstaller库
-
python 3.8+
我们的软件包要做什么?
这一步我会描述软件会做什么,同时给出软件代码。这一步我们用到了python自带的图形界面库tkinter
因为这是一个简单的示例,我们的软件打开后会出现两个按钮,绘制正方形
和擦除正方形
。点击绘制正方形
按钮,主界面会画一个正方形;点击擦除正方形
会擦除刚才画的正方形。
文件名称:client.py
代码如下:
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
"""
@File : client.py
@License : (C)Copyright 202-2021
-------------------------------------
@Modify Time: 2023/9/21 08:43
@Author :
@Version : 1.0
@Description : www.bchren.fun
"""
import tkinter as tk
def draw_square():
canvas.create_rectangle(50, 50, 200, 200, outline='black', width=2)
def erase_square():
canvas.delete("all")
# 创建主窗口
root = tk.Tk()
root.title("绘制正方形")
root.geometry("300x300")
# 创建画布
canvas = tk.Canvas(root, width=250, height=250)
canvas.pack()
# 绘制正方形按钮
draw_button = tk.Button(root, text="绘制正方形", command=draw_square)
draw_button.pack(side="left", padx=10, pady=10)
# 擦除正方形按钮
erase_button = tk.Button(root, text="擦除正方形", command=erase_square)
erase_button.pack(pady=10)
# 运行主循环
root.mainloop()
测试软件
这一步我们会在 pycharm 中运行软件,确保其行为符合预期。效果图
- 启动软件,并点击
绘制正方形
按钮
- 点击
擦除正方形
按钮
打包分发
我会将上面的代码打包成可以在 mac OS 系统上运行的软件包 本过程会用到第三方库pyinstaller
安装方法:
pip install pyinstaller
打包过程
-
在代码文件
client.py
所在的目录启动终端(terminal); -
输入命令
pyinstaller client.py
,等待结果; -
如果第二步为报错,则会在当前的目录中生成一个dist文件夹,我们的可执行文件就在里面;
运行程序
找到打包生成的dist目录,找到client
(如图所示)
双击该可执行文件,效果如下图所示
结尾
至此,我们就从零开始完成了一个app的编写,希望会对你有所帮助。
来源——harvey的网络日志