我正在尝试使用 Tkinter 作为 GUI 将我的脚本捆绑到 .app 中,而执行捆绑的包装器是 Platypus。
当我去运行该应用程序时,我收到此错误。
Traceback (most recent call last):
File "/Users/samb/Desktop/Beta1.app/Contents/Resources/script", line 4, in <module>
import tkinter
File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/P...ework/Versions/3.7/lib/python3.7/tkinter/__init__.py", line 36, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
ModuleNotFoundError: No module named '_tkinter'
我在这台机器上运行 Python 3.7.4,我的脚本使用:
import tkinter
from tkinter import filedialog
这应该使它兼容。该脚本在我使用终端运行时有效,但在我运行应用程序时无效。
我在捆绑应用程序中指定它也应该使用 python3...
不确定我在这里做错了什么?
几个问题: 没有文件/usr/bin/python3
。要么使用/usr/local/bin/python3
or /usr/bin/env
with python3
作为参数。或者您特定的 python 环境需要的任何内容。
由于某种原因,python 正在 Xcode 内寻找库,这是不寻常的。我安装了python3,但里面没有python
/Applications/Xcode.app/Contents/Developer/Library/Frameworks/
在我的安装中,有效的文件路径是:
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/tkinter/__init__.py
(即在 /Library 中,而不是在 Xcode 中。)由于脚本在终端中运行,因此 Platypus 的配置很可能是错误的。
作为一种快速破解,我想您可以将 Python.framework 从 /Library/Frameworks 符号链接到 Xcode 内的 Frameworks 文件夹。
正如评论中所述,您不需要包含第一个import
线。目前,您正在导入所有tkinter
,然后仅导入filedialog
。整个要点from
是为了避免导入整个库。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)