[英]python import successful in one terminal but fails in another
我成功下載並安裝(構建+ make)一個cython軟件包g2opy 。 當我嘗試檢查一切是否順利時,我得到了:
(cv) clmno@machine:~/OpenSource/python/g2opy$ python
Python 3.4.5 |Continuum Analytics, Inc.| (default, Jul 2 2016, 17:47:47)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import g2o
>>> import numpy
>>> import cv2
因此,我認為一切都很好,並打開了另一個終端窗口。 並嘗試導入相同的模塊,但失敗:
(cv) clmno@machine:~$ python
Python 3.4.5 |Continuum Analytics, Inc.| (default, Jul 2 2016, 17:47:47)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import g2o
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'g2o'
這與共享庫(.so文件)有關嗎? 如果成功導入,為什么下次會失敗?
在第二個終端中,您要在與第一個終端不同的目錄中運行Python。 這表明您構建的庫不在Python路徑中。 它在第一個終端中起作用,因為g2o庫位於您當前正在運行Python的目錄中。 按照Matthieu的建議,在您的PYTHONPATH
環境變量中添加“〜/ OpenSource / python / g2opy”。
在〜/ .bashrc中,添加:
export PYTHONPATH=$PYTHONPATH:path/to/g2opy
然后運行source ~/.bashrc
來更新當前路徑中的環境變量。
如果您是在本地安裝軟件包,則需要設置PYTHONPATH
。 好像沒有正確設置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.