【已解決】python 虛擬環境的三種方法+處理問題:Read timed out.

目錄

1 背景

2 裝兩個python3

3 pycharm:虛擬環境

創建   運行項目  添加已有虛擬環境

4 虛擬環境:virtualenv 

安裝  創建(可指定python版本)  進入\退出\刪除     運行項目

5 虛擬環境:virtualenvwrapper

6 虛擬環境中安裝第三方庫

6.2 HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.

6.3 國內源:            6.3.1 全局安裝源

【已解決】The repository located at pypi.douban.com is not a trusted or secure host and is being ignored.

6.4 虛擬環境中使用jupyter


1 背景

在裝一個以前項目,有幾個庫版本過低,爲了避免來回改動版本,特地裝了一個python虛擬環境。

系統win10,本身就是python3.7,再裝一個python3.6.5.,最後研究了三種方法,pycharm是最簡單的

放棄Anaconda的原因:重裝的時候,遇到了一些問題,於是轉投新歡

2 裝兩個python3

怕路徑衝突,我只在原來的python3.7上打✔,在環境變量中path加入路勁,另一個僅在虛擬環境中使用的,所以並沒有打勾。

注意:這個是我自己想的,不知道對不對,實踐是可行的。有問題歡迎指出。

 

3 pycharm:虛擬環境

3.1創建

按照這個路徑:File | Settings | Project: 項目名 | Project Interpreter,點擊如下圖所示的設置,選擇【Add】

創建新的虛擬環境:

比如創建一個項目a:

刪除虛擬環境:

windows的方法很簡單,退出項目後,刪掉文件就可以了。

3.2 運行項目

每次切換python環境,系統都來不及反應(還以爲自己創建失敗了),處理:

關掉項目,重新打開,就可以了:

3.3 添加已有虛擬環境

4 虛擬環境:virtualenv 

4.1 安裝

在cmd中輸入:

C:\Users\Ashley>pip install virtualenv

4.2 創建(可指定python版本)

要在你想建立虛擬環境的項目的文件目錄下,輸入以下代碼:

D:\codes\src>virtualenv [虛擬環境的名字]

D:\codes\src>virtualenv -p [python.exe安裝位置] [虛擬環境的名字]   # 指定python版本

比如

D:\codes\src>virtualenv venv

D:\codes\src>virtualenv -p D:\python\python36\python.exe venv36

4.3 進入\退出\刪除

激活虛擬環境要進入虛擬環境目錄下的script,輸入:

D:\codes\src\venv36\Scripts>activate   # 進入虛擬環境

# 成功進入虛擬環境,前方出現venv36
(venv36) D:\codes\src\venv36\Scripts>python --version
Python 3.6.5

(venv36) D:\codes\src\venv36\Scripts>deactivate  # 退出虛擬環境

刪除虛擬環境:

windows的方法很簡單,退出虛擬環境後刪掉venv36文件即可。

4.4 運行項目

如3.2

5 虛擬環境:virtualenvwrapper

在virtualenv的基礎上再加工:

優點:virtualenvwrapper這個軟件包可以讓我們管理虛擬環境變得更加簡單。不用再跑到某個目錄下通過virtualenv來創建虛擬環境,並且激活的時候也要跑到具體的目錄下去激活。

參考:pip命令及虛擬環境的建立

6 虛擬環境中安裝第三方庫

6.1 pip

像往常一樣輸入pip語句就行:(比如在虛擬環境py37-common中安裝numpy)

(py37-common) D:\codes\src>pip install numpy==1.14.5

把numpy==1.14.5改成所需第三方庫,即可

6.2 HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.

安裝延遲,報錯:

pip._vendor.urllib3.exceptions.ReadTimeoutError: 
HTTPSConnectionPool(host='files.pythonhosted.org', port=443): 
Read timed out.

解決:

(py37-common) D:\codes\src>pip install -i https://pypi.douban.com/simple numpy==1.14.5

把numpy==1.14.5改成所需第三方庫,即可

6.3 國內源

    https://pypi.douban.com/ 豆瓣
    https://pypi.hustunique.com/ 華中理工大學
    https://pypi.sdutlinux.org/ 山東理工大學
    https://pypi.mirrors.ustc.edu.cn/ 中國科學技術大學

6.3.1 全局安裝源

①在文件地址輸入: %APPDATA%

②在該文件目錄下新建文件夾,命名pip

③在文件夾pip中新建txt文件,命名爲pip.ini

④在pip.ini中輸入以下內容

[global] 

timeout = 6000 

index-url = https://pypi.douban.com/simple

參考:pip命令及虛擬環境的建立 

6.3.2【已解決】使用國內源的時候會遇到如下問題

The repository located at pypi.douban.com 
    is not a trusted or secure host and is being ignored. 
If this repository is available via HTTPS we recommend you use HTTPS instead, 
    otherwise you may silence this warning and allow it 
    anyway with '--trusted-host    pypi.douban.com'.

 

解決:因爲源用的是http,把http改成https即可。

6.4 虛擬環境中使用jupyter

雖然我拋棄了Anaconda,但還是很喜歡jupyter的佈局,所以另外安裝了jupyter

pip install -i https://pypi.douban.com/simple jupyter  // 在主環境安裝了jupyter

jupyter notebook  // 在cmd中打開jupyter

可以看見jupyter中只有主環境的python,並沒有虛擬環境的。 

解決:

// 在虛擬環境中,安裝jupyter的核心插件
(py37-common) D:\codes\src>pip install -i https://pypi.douban.com/simple ipykernal  

// 在虛擬環境中,加載jupyter
// 標準格式:python -m ipykernel install --user --name 虛擬環境名字 --display-name "展示名字"
(py37-common) D:\codes\src>python -m ipykernel install --user --name py37-common 

關閉後再打開jupyter,就可以發現新的虛擬環境了!

參考:

更改pip源 / 解決 ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章