问题
I have recently installed the Ubuntu app for Windows 10 so that I can use it for a class.
I am following some cryptic assignment directions to "try out tkinter".
I installed the package python3-tk in the Ubuntu terminal window following instructions located here: How to install and use Tkinter in ubuntu / Debian / Linux mint.
So then I execute
~$ python3
with the result
Python 3.5.2 (default, Aug 18 2017, 17:48:00)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
then the following commands:
>>> import tkinter
>>> tkinter.Tk()
With the resulting error:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.5/tkinter/__init__.py", line 1871, in __init__
self.tk = _tkinter.create(screenName, baseName, className, interactive,
wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable
回答1:
Solved:
Note: This is when using the Ubuntu App inside Windows 10
Install Xming X server for Windows.
During installation there is an option to set the display to 0.
Add the line export DISPLAY=:0;
to .bashrc
as suggested.
回答2:
I was having the same problem. I recently installed the 'Bash on Ubuntu on Windows' app from the store, and I was getting the following error when running my python script that tries to create a python UI:
_tkinter.TclError: no display name and no $DISPLAY environment variable
I followed @Zach instructions however my problem still remained. This is how I fixed my issue after following @Zach.
- I first installed Xming X Server for Windows.
- I then went into my home directory
~
on the Ubuntu terminal, and opened my .bashrc file by executingvim .bashrc
. - At the end of the file, I added the following line:
export DISPLAY=:0;
. Instead of 'execute', I used 'export'.
Make sure to close all terminal instances before trying to execute the python script.
And that worked for me!
来源:https://stackoverflow.com/questions/48254530/tkinter-in-ubuntu-inside-windows-10-error-no-display-name-and-no-display-env