【发布时间】:2021-08-22 17:50:47
【问题描述】:
我创建了一个 Python 项目,该项目在我的日常工作计算机上运行得非常好。我使用 Conda/Spyder 制作的。
我决定移动并对相同的项目进行一些更改,但在我的家庭 Windows 10 计算机上使用最新版本的 SublimeText,我得到了很多 Traceback 错误,NameErros。
我很好奇,所以我决定使用带有 Visual Code 的 Ubuntu。我有不同的错误。
所以我的问题如下:发生这种情况是否正常,或者我的代码是只有我的工作计算机才能理解的垃圾? 我使用 Tkinter GUI 的应用程序以及当我在 Ubuntu 上使用 VC 玩 Tkinter 时,看起来就像 Ubuntu 上的语法发生了变化。例如。在 windows 上使用起来很简单,Ubuntu 显然不会接受。
from tkinter import *
root = Tk()
root.mainloop()
在 Ubuntu 上可能是这样的
from tkinter import *
root = ttk.Tk()
root.mailoop()
我是这类主题和编程的新手,所以我有很多问题。
【问题讨论】:
-
这与 Sublime Text、VSCode 或任何其他编辑器或 IDE 没有任何关系。它必须(很可能)与不同的 Python 版本、不同的安装包和同一包的不同版本有关。确保您的环境都相同。
-
在您的工作计算机上,运行
pip freeze > requirements.txt。然后在您的家用 Windows 和 Ubuntu 计算机上,创建新的 virtualenvs 并运行pip install -r requirements.txt。随意修剪requirements.txt,因为它会创建一个列表所有您已安装的模块,而不仅仅是您项目中使用的模块。这就是为什么 virtualenvs 是个好主意。 -
这里有很多我不明白的东西。你的整个追溯是什么。然后没有
ttk.Tk(),那你连ttk都没有导入,那它是怎么定义的......
标签: python python-3.x tkinter ttk