python virtualenv 空闲和 tkinter 问题
为了能够在我的 virtualenv python 中使用空闲,我
#!/myvirtualenv/python
from idlelib.PyShell import main
if __name__ == '__main__':
main()
在 virtualenv 的 bin/ 中创建了一个空闲脚本,但它抱怨无法找到 Tkinter。
** IDLE can't import Tkinter. Your Python may not be configured for Tk. **
我检查过,Tkinter 可以在常规 python2.7.1 中导入,但我无法从 virtualenv python 导入 Tkinter。 如何使 Tkinter 可用于我的 virtualenv python(出于其他原因,我必须在 virtualenv 中不使用任何站点包) 谢谢
To be able to use idle with my virtualenv python, I created an idle script
#!/myvirtualenv/python
from idlelib.PyShell import main
if __name__ == '__main__':
main()
in the bin/ of my virtualenv but it complains about not being able to find Tkinter.
** IDLE can't import Tkinter. Your Python may not be configured for Tk. **
I checked and Tkinter can be imported in the regular python2.7.1 but I can't import Tkinter from my virtualenv python.
How can I make Tkinter available to my virtualenv python ( I have to use no site-packages with the virtualenv for an other reason)
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
一种简单的解决方案是将 tcl 文件夹从原始 python 安装复制到虚拟环境。例如,在我的机器上我执行了以下操作:
One simple solution is to copy the tcl folder from your original python installation to the virtual environment. For example, on my machine I did the following:
我目前在一些虚拟环境中使用 IDLE,但我的启动脚本如下所示。无论我是否使用 --no-site-packages 选项创建环境,这都对我有用。由于某种原因,我必须将虚拟 python 的完整路径放在脚本的标题中。
I'm currently using IDLE in a few Virtual Environments but my script to start it up looks like below. This works for me whether I created my environment using --no-site-packages option or not. For some reason I had to put the full path to my virtual python in the header of the script.