猿问

Python tkinter 包无法正常运行

我刚开始使用 tkinter,甚至没有运行或准备复杂的 GUI 应用程序,我在其他服务器上使用了这个简单的命令并且它运行良好,所以问题可能出在我的安装中。


我的 Linux 版本是 18.04,我的 python 版本是 3.6.5。我尝试从 ssh 连接,尝试从 windows putty(它是远程服务器)连接。


这是我尝试执行的代码:


from tkinter import * 

potato = Tk()

potato.mainloop()

这是我得到的错误:


---------------------------------------------------------------------------

TclError                                  Traceback (most recent call last)

<ipython-input-1-1a8e1fdc2509> in <module>()

      1 from tkinter import *

----> 2 potato = Tk()

      3 potato.mainloop()


/usr/lib/python3.6/tkinter/__init__.py in __init__(self, screenName, baseName, className, useTk, sync, use)

   2018                 baseName = baseName + ext

   2019         interactive = 0

-> 2020         self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)

   2021         if useTk:

   2022             self._loadtk()




TclError: no display name and no $DISPLAY environment variable

我是个菜鸟,所以请告诉我您可能需要的任何缺失信息。


米琪卡哇伊
浏览 248回答 1
1回答

蝴蝶不菲

您的代码可以正常工作,不用担心。在这种情况下,您收到的错误 (&nbsp;no display name and no $DISPLAY environment variable) 与您的 SSH 连接有关,因为服务器无法找到显示程序的显示位置。如果您想使用 PuTTY 并在您的 Windows 机器上查看 tkinter 应用程序(运行 X 服务器),您需要事先在 PuTTY 配置中指定。为此,您只需启用 X11 转发(在连接 > SSH > X11 > 启用 X11 转发中)。
随时随地看视频慕课网APP

相关分类

Python
我要回答