我剛開始使用 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我是個菜鳥,所以請告訴我您可能需要的任何缺失信息。
1 回答

蝴蝶不菲
TA貢獻1810條經驗 獲得超4個贊
您的代碼可以正常工作,不用擔心。
在這種情況下,您收到的錯誤 ( no display name and no $DISPLAY environment variable
) 與您的 SSH 連接有關,因為服務器無法找到顯示程序的顯示位置。
如果您想使用 PuTTY 并在您的 Windows 機器上查看 tkinter 應用程序(運行 X 服務器),您需要事先在 PuTTY 配置中指定。為此,您只需啟用 X11 轉發(在連接 > SSH > X11 > 啟用 X11 轉發中)。
添加回答
舉報
0/150
提交
取消