Python 在 import 的时候如何屏蔽.local 目录下的包而用系统目录下的同名包

2017-05-17 17:12:01 +08:00
 going2think
大家好,我有个问题:我在电脑上装了两个版本的 tensorflow,一个是用 pip install --user 安装的,在`~/.local/lib/python2.7/site-packages/`目录下,另一个是通过`sudo pip install `安装的,在`/usr/local/lib/python2.7/dist-packages/`目录下,请问在 Python 交互环境中,`import tensorflow as tf`的时候,import 系统目录下的那个版本,而不是当前用户目录下的版本呢,谢谢大家~
2970 次点击
所在节点    Python
5 条回复
TimePPT
2017-05-17 17:37:57 +08:00
试试把`~/.local/lib/python2.7/site-packages/` 加到 python 里并设为优先。

以及,多个环境还是建议用类似 virtualenv 建立虚拟环境隔离处理,来回安装来回倒,时间久了自己都不记得啥是啥了
TimePPT
2017-05-17 17:38:49 +08:00
@TimePPT 更正,是加到 PYTHONPATH 里
going2think
2017-05-17 17:42:00 +08:00
@TimePPT 好的谢谢,确实解决了我的问题,感谢~
TimePPT
2017-05-17 17:47:26 +08:00
@going2think 客气,或者你直接具体模块软链到系统 Path 下应该也行,注意别和系统下重名。

不过还是强烈建议建立虚拟环境,免去很多麻烦,执行时可以在程序里直接指定引用具体环境的。方法自己搜搜吧。
mingyun
2017-05-17 23:15:18 +08:00
@TimePPT nice

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/361999

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX