Pycharm中Python環境配置常見問題解析

發布時間:2020-01-18 20:29 來源:互聯網 當前欄目:網站服務器

本文實例講述了Pycharm中Python環境配置常見問題。分享給大家供大家參考,具體如下:

1、問題的發現

最近在用Pycharm下的命令行工具安裝、運行jupyter notebook時kernal一直報錯,報錯最下面兩行如下所示

import win32api
ImportError: DLL load failed: 找不到指定的模塊。

經過網絡搜索發現是無法正確解析python的路徑,可能是python解釋器的路徑可能沖突,后來我發現有“兩個”python路徑,一個是我之前安裝python的路徑,另一個是在我的項目代碼目錄下的一個venv目錄。我以為pycharm又在我的目錄下安裝了一邊python,于是就把自己安的卸載了。可是卸載之后再運行程序就報錯說找不到python在我卸載的的那個目錄下,我就奇怪了你不是在項目的目錄下有一個python嗎,怎么又去找我安裝的。

經過一番搜索我弄明白了,原來項目目錄下的那個python是虛擬環境,它是pycharm基于系統的python創建的虛擬環境,刪了系統的python,它也不能用了。而且我之前一直使用的是Pycharm創建的虛擬環境,我在虛擬環境中安裝并啟動了jupyter notebook,導致虛擬環境中的python解釋器的沖突。

2、Pycharm中的解釋器

那么問題來了,Pycharm什么時候創建的虛擬環境?

在安裝完Pycharm并新建一個Python項目的時候會彈出如下對話框,如果不點開Project Interpreter選項則會默認創建一個虛擬環境。點開之后可以看到New environment using選項中有三個環境管理的選項

其中第一個Virtualenv是Pycharm集成的環境管理管理工具,它會根據系統的python解釋器Base interpreter在項目文件夾Location下創建一個虛擬環境,并且擁有獨立的庫library和解釋器interpreter,與外部環境隔絕,這樣項目中的文件依賴的版本就不會受到其他庫文件的影響。當全局或者其他庫文件版本更新之后出現了兼容問題時,也不會影響到Virtualenv中的項目。勾選Inherit global site-packgaes可以從全局安裝的Python中繼承使用庫文件,勾選Make available to all projects可以使本項目下載的庫文件可被外部調用。

第二個Pipenv是python的依賴管理工具,設想一下如果在一個環境中開發好python之后需要在另一個環境中運行或開發,而另一個環境中的依賴包的種類和版本不可能和之前一樣,這時候就需要一個工具來管理python項目中的依賴和版本。pipenv會在當前項目文件夾下創建 PipfilePipfile.lock 文件,用于記錄和管理項目中使用的依賴包,當一個新的環境需要部署項目時只需要根據pipfile中的記錄去下載對應的包即可。

第三個Conda也是一個包環境管理工具,其對于的環境管理工具為Anaconda或Miniconda,這個應用會在系統中對Python環境進行管理,通過它你可以在系統中創建多個不同的開發環境。例如一個環境pytho版本為2.7,另一個為3.7,當你需要使用3.7的版本時,就通過anaconda啟動該環境,并且在該環境中安裝配置的依賴包在另一個環境中是看不見的。Pycharm可以引入系統中已配置好的Anaconda的環境,直接使用。

也可以使用系統中全局安裝的Python,勾選Existing Interpreter并找到全局系統安裝Python.exe位置即可

3、Pycharm配置遠程服務器

通過Pycharm集成的Remote Host工具可以便捷地和遠端服務器相連,進行服務端文件的查看和代碼同步。通過點擊菜單欄的Tools->Deployment->Browse Remot Host,彈出如下配置對話框,輸入服務器相關信息即可連接到指定服務器,并在Pycharm右側Remote Host側欄顯示Root path對應的目錄。

  • 1、
  • 2、
  • 3、
  • 4、
  • 5、
  • 6、
  • 7、
  • 8、
  • 9、
  • 10、
  • 11、
  • 12、
  • 13、
  • 14、
  • 15、
  • 16、
  • 17、
  • 18、
  • 19、
  • 20、
  • 21、
  • 22、
  • 23、
  • 24、
  • 25、
  • 1、
  • 2、
  • 3、
  • 4、
  • 5、
  • 6、
  • 7、
  • 8、
  • 9、
  • 10、
  • 11、
  • 12、
  • 13、
  • 14、
  • 15、
  • 16、
  • 17、
  • 18、
  • 19、
  • 20、
  • 21、
  • 22、
  • 23、
  • 24、
  • 25、