python如何从零写一个app

写在前面

最近有朋友问我一个问题,说他学了一段时间的编程了,现在却只会在命令行里打印东西,如何写出一个可以安装的应用软件呢?这个问题应该是很多初学者都遇到过,市面上的书籍都会从最基础的语法开始教起,但是很少会有人以简单的方式来说明如何从零开始做一个应用软件。今天我们以 Python 语言为例,写一个软件包。

你需要具备的知识

  1. 可以写简单的 python 代码;
  2. 知道依赖包的运用;

环境依赖

  1. pyinstaller库
  2. 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(5050200200, 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 中运行软件,确保其行为符合预期。效果图

  1. 启动软件,并点击绘制正方形按钮
python如何从零写一个app
  1. 点击擦除正方形按钮
python如何从零写一个app

打包分发

我会将上面的代码打包成可以在 mac OS 系统上运行的软件包 本过程会用到第三方库pyinstaller安装方法:

pip install pyinstaller

打包过程

  1. 在代码文件client.py所在的目录启动终端(terminal);
  2. 输入命令pyinstaller client.py,等待结果;
  3. 如果第二步为报错,则会在当前的目录中生成一个dist文件夹,我们的可执行文件就在里面;

运行程序

找到打包生成的dist目录,找到client(如图所示)

python如何从零写一个app

双击该可执行文件,效果如下图所示python如何从零写一个app

结尾

至此,我们就从零开始完成了一个app的编写,希望会对你有所帮助。


原文始发于微信公众号(harvey的网络日志):python如何从零写一个app

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/188288.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!