Mac導入第三方模塊tushare遇到的坑


1.嘗試在Anaconda中導入

windows系統的操作是找到Anaconda Prompt並直接pip install tushare,在查閱資料后了解到Mac終端即是Anaconda Prompt,只不過需要進入bash環境,輸入:

source ~/.bash_profile

終端顯示:

此時就可以用conda命令完成對包的處理:

  • 查找包

    conda search XXX
    
  • 安裝包

    conda install XXX
    
  • 更新包

    conda update XXX
    
  • 刪除包

    conda remove XXX
    

但是在conda install tushare的時候卻遇到了問題:

尋找PackagesNotFoundError: The following packages are not available from current channels(當前渠道下無法安裝包)的解決方法,找到以下幾條:

首先查找符合條件的安裝包路徑:

anaconda search -t conda tushare

其次選擇符合條件的安裝包路徑:

conda install -c https://conda.anaconda.org/列表中對應的Name 要安裝的包

但是我卻發現查找后出來以下信息:

我理解的大致意思是,只找到一個包,tushare 0.5.1版本只支持win-64系統,所以在Mac Anaconda上無法安裝。

更新

今天剛試了一下利用管理員權限,直接

sudo python3 -m pip install tushare

就可以將tushare安裝到Anaconda中並使用了。

2.pycharm中安裝

這個方法容易並且簡單,首先記得將project interpreter切換成python3,不要用之前的anaconda

其次,直接在IDE中import tushare,這時候因為沒有第三方庫,pycharm會自動出現紅色下划線,將光標移到tushare上面會出現紅色提示符,這個時候點擊紅色提示符,並點擊install package tushare,等待安裝完成即可,此時安裝的第三方庫僅存在於當前py文件夾的編譯環境中,所以當你創建別的py文件,不在同一個文件夾下時,又需要重新安裝

3.終端pip install

打開終端輸入:pip3 install tushare,等待安裝成功

但是問題隨之而來,安裝成功后,進入python編譯環境,導入tushare包卻提示失敗:

顯示模塊不存在,明明安裝提示成功卻無法導入,並且查找了python文件夾中的site-packages目錄下的包,發現也有tushare這個文件夾以及whl文件:

於是又去各種找原因。。。

最后發現,對mac os系統自帶的python進行了升級,新安裝的python的site-packages目錄並沒有加到python的系統路徑中,所以在使用其他庫時發現出現了缺少模塊的錯誤。

查看python的模塊路徑方法是

import sys

print sys.path

於是我去查找python模塊路徑發現:

對,沒錯,只有anaconda的路徑,應該是安裝anaconda后系統默認先調用anaconda進行編譯,所以我們需要手動加入原本的python site-packages的路徑:

下邊是在這個python系統路徑中加入新的模塊路徑的三種方法,

1、添加環境變量PYTHONPATH,python會添加此路徑下的模塊,在.bash_profile文件中添加如下類似行:

export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python3.7/site-packages

2、在site-packages路徑下添加一個路徑配置文件,文件的擴展名為.pth,內容為要添加的路徑即可

3、sys.path.append()函數添加搜索路徑,參數值即為要添加的路徑。

我利用的是第三種方法,臨時加入搜索路徑

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages

加入臨時路徑后,就導入成功了!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM