2011-05-03 3 views
7

Pour pouvoir utiliser au ralenti avec mon python virtualenv, j'ai créé un script inactifpython virtualenv ralenti et numéro tkinter

#!/myvirtualenv/python 
from idlelib.PyShell import main 
if __name__ == '__main__': 
    main() 

dans le bac/de mon virtualenv mais il se plaint de ne pas être en mesure de trouver Tkinter.

** IDLE can't import Tkinter. Your Python may not be configured for Tk. ** 

J'ai vérifié et Tkinter peuvent être importés dans la python2.7.1 régulière, mais je ne peux pas importer Tkinter de mon python virtualenv. Comment puis-je faire Tkinter à la disposition de mon python virtualenv (j'utiliser aucun site-packages avec le virtualenv pour une autre raison) Merci

Répondre

1

J'utilise actuellement IDLE dans quelques environnements virtuels, mais mon script pour démarrer ça ressemble à ci-dessous. Cela fonctionne pour moi si j'ai créé mon environnement en utilisant l'option --no-site-packages ou non. Pour une raison quelconque, j'ai dû mettre le chemin complet de mon python virtuel dans l'en-tête du script.

#!/home/steve/virt_idle/bin/python 
from idlelib.PyShell import main 
if __name__ == '__main__': 
    main() 
3

Une solution simple consiste à copier le dossier tcl de votre installation Python d'origine dans l'environnement virtuel. Par exemple, sur ma machine, j'ai fait ce qui suit:

C:\> virtualenv t:\env\myenv 
C:\> xcopy c:\python27\tcl t:\env\myenv\tcl /e /i /k