J'ai récemment installé l'application Ubuntu pour Windows 10 afin de pouvoir l'utiliser pour une classe.
Je suis en train de suivre quelques instructions d'affectation cryptiques pour "essayer tkinter".
J'ai installé le paquet python3-tk dans la fenêtre du terminal Ubuntu en suivant les instructions situées ici: Comment installer et utiliser Tkinter dans ubuntu/Debian/Linux mint .
Alors j'exécute
~$ python3
avec le résultat
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.
puis les commandes suivantes:
>>> import tkinter
>>> tkinter.Tk()
Avec l'erreur résultante:
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
Résolu:
Remarque: c'est lorsque vous utilisez l'application Ubuntu dans Windows 10
Installer serveur Xming X pour Windows .
Pendant l'installation, il existe une option pour régler l'affichage sur 0.
Ajoutez la ligne export DISPLAY=:0;
à .bashrc
comme suggéré.
J'avais le même problème. J'ai récemment installé l'application "Bash sur Ubuntu sur Windows" à partir du magasin, et j'obtenais l'erreur suivante lors de l'exécution de mon script python qui tente de créer une interface utilisateur python:
_tkinter.TclError: no display name and no $DISPLAY environment variable
J'ai suivi les instructions de @Zach mais mon problème persiste. C'est ainsi que j'ai résolu mon problème après avoir suivi @Zach.
~
Sur le terminal Ubuntu et j'ai ouvert mon fichier .bashrc en exécutant vim .bashrc
.export DISPLAY=:0;
. Au lieu de "exécuter", j'ai utilisé "exporter".Assurez-vous de fermer toutes les instances de terminal avant d'essayer d'exécuter le script python.
Et cela a fonctionné pour moi!