python - 使 Python 可执行到 app mac os catalina
问题描述
我试图通过将我的python可执行文件放入一个名为“folder.app”的文件夹中,然后放入“Contents”,然后放入“MacOs”,但每当我尝试打开它时,它什么都不做。这是Python代码:
#!/usr/bin/env python3
import tkinter as tk
from PIL import Image, ImageTk
import time
import os
import ast
#other stuff
f = open("/Users/mimmo/ssh_login_system/login_info.txt", "r")
contents = f.read()
f.close()
users = ast.literal_eval(contents)
#variables
stuff = ""
newlist = []
login = ""
inp = ("| => ")
rw = tk.Tk()
rw.title("Login")
rw.configure(bg="grey14")
rw.geometry("500x200")
def login(self):
username = e1.get()
password = e2.get()
if username in users:
if password == users[username]:
rw.destroy()
print ("\nlogin successful!\n")
os.system("python3 connect")
a = tk.Label(rw, text="Username:", fg='white', bg='grey14').grid(row=0)
b = tk.Label(rw, text="Password:", fg='white', bg='grey14').grid(row=1)
e1 = tk.Entry(rw)
e2 = tk.Entry(rw, show="*")
e2.bind("", login)
e1.grid(row=0, column=1)
e2.grid(row=1, column=1)
rw.mainloop()
解决方案
仅将 python 可执行文件放入扩展名为 .app 的文件夹中并不会使您的 python 代码成为本机应用程序。看看可以将你的 python 代码构建到本机应用程序中的库 -有很多甚至更多关于如何使用它们的教程,谷歌周围!
对于 macOS,只有应用程序py2app
可以工作,但对于其他跨平台选项,请参阅此现有答案
推荐阅读
- c++ - 我们如何在 C/C++ 程序中消除 break 语句以支持编译器进行自动向量化?
- python - 带有条件和关键字检查的字典理解
- android - 如何在 macos 上永久删除 adb 设备模拟器?
- r - 在 R 中批量处理和导出 CSV 文件列表
- android - 如何处理我的应用推荐金额?
- flutter - 如何在列表视图中添加视频
- gradle - Artifactory 目录包含点,无法使用 Gradle 6.5 解决依赖关系
- css - 从不同的 SCSS 文件加载填充/边距
- .htaccess - 获取错误服务器无法读取 htaccess 文件,拒绝访问是安全的。我的服务器不断自动更改回权限 710
- .net - Entity Framework 中的 DbEntityEntry 和 Changetracker 有什么区别?