首页 > 解决方案 > MacOS:运行代码时对 IDE 和终端的不同处理?

问题描述

尝试使用 ktinter 时,我在 macos 上遇到了 python IDE (Sublime) 问题:

我设置了一个干净的 mac 并通过普通安装程序安装了 Python 3.7(勾选了安装 tkinter 的框)

我现在遇到的问题是:当我在 Sublime 中编写代码并尝试在 IDE 中运行它(Sublime -> Tools -> Build)时,我收到一条错误消息。

代码

import tkinter as tk
tk._test()

输出

Traceback (most recent call last):
  File "/Users/christiankoch/Desktop/sys.py", line 1, in <module>
    import tkinter as tk
ImportError: No module named tkinter
[Finished in 0.1s with exit code 1]
[shell_cmd: python -u "/Users/christiankoch/Desktop/sys.py"]
[dir: /Users/christiankoch/Desktop]
[path: /Library/Frameworks/Python.framework/Versions/3.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin] 

但是,当我保存文件并在终端中运行它时,一切正常,我看到了测试窗口。

在终端

python3 test.py

所以最终我对这两种方法的不同结果感到困惑。当我在 Windows 上使用 Sublime 时,它​​工作得非常好;甚至在 macos 上使用 pyCharm 也适用于 tkinter。所以我很困惑问题是什么。

标签: pythonmacosterminalidesublimetext3

解决方案


当您从控制台运行 file.py 时,默认使用环境变量中指定的可执行文件。在崇高你可能使用一个构建系统,它指向另一个环境/可执行文件。你应该看看https://youtu.be/xqcTfplzr7c 并按照说明进行操作。


推荐阅读