#tkinter #virtualenv #python-idle
#tkinter #virtualenv #python-простаивает
Вопрос:
Чтобы иметь возможность использовать idle с моим virtualenv python, я создал скрипт idle
#!/myvirtualenv/python
from idlelib.PyShell import main
if __name__ == '__main__':
main()
в bin / моего virtualenv, но он жалуется на невозможность найти Tkinter.
** IDLE can't import Tkinter. Your Python may not be configured for Tk. **
Я проверил, и Tkinter может быть импортирован в обычном python2.7.1, но я не могу импортировать Tkinter из моего virtualenv python.
Как я могу сделать Tkinter доступным для моего virtualenv python (я не должен использовать пакеты сайта с virtualenv по другой причине)
Спасибо
Ответ №1:
Одним из простых решений является копирование папки tcl из вашей исходной установки python в виртуальную среду. Например, на моей машине я сделал следующее:
C:> virtualenv t:envmyenv
C:> xcopy c:python27tcl t:envmyenvtcl /e /i /k
Ответ №2:
В настоящее время я использую IDLE в нескольких виртуальных средах, но мой скрипт для его запуска выглядит следующим образом. Это работает для меня независимо от того, создал ли я свою среду, используя опцию —no-site-packages или нет. По какой-то причине мне пришлось указать полный путь к моему виртуальному python в заголовке скрипта.
#!/home/steve/virt_idle/bin/python
from idlelib.PyShell import main
if __name__ == '__main__':
main()