Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python TkInter错误:没有显示名称和$display环境变量_Python_Python 3.x_Tkinter - Fatal编程技术网

Python TkInter错误:没有显示名称和$display环境变量

Python TkInter错误:没有显示名称和$display环境变量,python,python-3.x,tkinter,Python,Python 3.x,Tkinter,我正在TkInter上工作,遇到了一个问题,这是我的代码: from tkinter import * import tkinter as tk root = tk.Tk() root.geometry('400x400') 我遇到了以下错误: Traceback (most recent call last): File "main.py", line 4, in <module> root = tk.Tk() File "/usr/local/lib/pyth

我正在TkInter上工作,遇到了一个问题,这是我的代码:

from tkinter import *
import tkinter as tk

root = tk.Tk()
root.geometry('400x400')
我遇到了以下错误:

Traceback (most recent call last):
  File "main.py", line 4, in <module>
    root = tk.Tk()
  File "/usr/local/lib/python3.7/tkinter/__init__.py", line 202
3, in __init__
    self.tk = _tkinter.create(screenName, baseName, className,
interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment
variable
回溯(最近一次呼叫最后一次):
文件“main.py”,第4行,在
root=tk.tk()
文件“/usr/local/lib/python3.7/tkinter/_init__.py”,第202行
3,在初始__
self.tk=\u tkinter.create(屏幕名、基本名、类名、,
交互式、wantobjects、useTk、同步、使用)
_tkinter.TclError:没有显示名称和$display环境
变量

我该如何解决这个问题呢?

您显然是在尝试使用repl来解决这个问题。它是“Python”,不支持tkinter需要的显示。它们确实提供了一个单独的“Tkinter”选项,尽管它在语言列表中排名靠后。这里有一条捷径:

这样你就不会犯那个错误了。为了实际显示窗口,您还必须在当前代码下添加以下内容:

root.mainloop()

您不需要从
导入
*
中导入
,因为您已经将
导入为tk
from tkinter import *  
  
top = Tk()  
  
top.geometry("400x250")  
  
#creating label  
uname = Label(top, text = "Username").place(x = 30,y = 50)  
  
#creating label  
password = Label(top, text = "Password").place(x = 30, y = 90)  
  
  
sbmitbtn = Button(top, text = "Submit",activebackground = "pink", activeforeground = "blue").place(x = 30, y = 120)  
  
e1 = Entry(top,width = 20).place(x = 100, y = 50)  
  
  
e2 = Entry(top, width = 20).place(x = 100, y = 90)  
  
  
top.mainloop()