最近在练习python开发软件,就开发了一个 客户端版的 计算器。先给大家看一下 做出来的样子
python版本:3.8 以上
主要是 使用 import tkinter as tk 这个库来实现图形界面开发
代码还是比较简单的:
# 创建主窗口
root = tk.Tk()
root.title("python简单计算器项目练习") # 设置窗口标题
root.geometry("380x700") # 设置窗口大小
root.configure(bg="#1e1e1e") # 设置背景颜色# 显示输入与结果的区域
entry_var = tk.StringVar() # 字符串变量用于绑定 Entry 内容
entry = tk.Entry(root, textvariable=entry_var, font=("Helvetica", 32),bg="#1e1e1e", fg="white", bd=0, justify='right', relief='flat')
entry.pack(fill="both", ipadx=8, ipady=30, padx=20, pady=(30, 10)) # 布局并设置内边距# 绑定键盘输入事件
root.bind("<Key>", keypress)# 创建按钮的函数,方便重复使用
def create_btn(parent, text, cmd, bg="#2a2d2e", fg="white"):return tk.Button(parent, text=text, command=cmd,font=("Helvetica", 20), bg=bg, fg=fg,relief="flat", activebackground="#444", activeforeground="white",height=2, width=4)# 定义按钮布局和每个按钮的功能
buttons = [[("C", clear, "#d64541"), ("←", backspace, "#e67e22"), ("%", lambda: press("%"), "#3a3f44"), ("/", lambda: press("/"), "#3498db")],[("7", lambda: press("7")), ("8", lambda: press("8")), ("9", lambda: press("9")), ("*", lambda: press("*"), "#3498db")],[("4", lambda: press("4")), ("5", lambda: press("5")), ("6", lambda: press("6")), ("-", lambda: press("-"), "#3498db")],[("1", lambda: press("1")), ("2", lambda: press("2")), ("3", lambda: press("3")), ("+", lambda: press("+"), "#3498db")],[("0", lambda: press("0")), ("0", lambda: press("0")), (".", lambda: press(".")), ("=", equal, "#2ecc71")]
]# 创建按钮区域的容器框架
btn_frame = tk.Frame(root, bg="#1e1e1e")
btn_frame.pack(padx=20, pady=10)# 遍历按钮列表,逐行添加按钮
for r, row in enumerate(buttons):row_frame = tk.Frame(btn_frame, bg="#1e1e1e") # 每一行一个 Framerow_frame.pack(expand=True, fill="both", pady=4) # 设置填充和间距for i, (txt, func, *color) in enumerate(row):bg = color[0] if color else "#2a2d2e" # 如果指定了背景色就用指定的,否则用默认色btn = create_btn(row_frame, txt, func, bg) # 创建按钮btn.grid(row=r, column=i, sticky="nsew", padx=5, pady=3) # 放置按钮row_frame.grid_columnconfigure(i, weight=1) # 平分行内按钮宽度# 启动主事件循环
root.mainloop()
打包 exe命令 :
安装 :pyinstaller
pip install pyinstaller
在项目根目录下执行
打包命令:
pyinstaller --onefile --windowed main.py
有兴趣的小伙伴,可以拿去看看,希望能在你编程学习的过程中帮助到你。
完整代码和简单的操作说明已经打包好了。可以获取:
https://wwwoop.com/home/Index/projectInfo?goodsId=91&typeParam=2&subKey=1