## 第三方庫的管理
> python中比較牛逼的地方就是由大量的第三方庫提供給你使用。
#### 第三方庫的管理網(wǎng)站 https://pypi.org/
#### 如何安裝第三方庫
####? pip
> pip就是python的包管理工具,解決了包直接的依賴關系。可以方便的管理第三方庫(包).
>
> 類似于PHP中Composer,或者Nodejs中的npm,或者Linux中的yum。
### 如何使用pip
`pip install 包名(庫名)`
注意:如果有多個python環(huán)境的情況下,可能需要使用pip3
例如安裝pymysql這個庫
`pip install pymysql`
### 安裝指定版本的包
`pip install 包名==版本`
### 搜索已經(jīng)安裝的包
`pip show 包名`
### 查看安裝的所有包
`pip list`
### 更換pip的鏡像源
```
PIP 更換國內安裝源
pip國內的一些鏡像
??阿里云 http://mirrors.aliyun.com/pypi/simple/
??中國科技大學 https://pypi.mirrors.ustc.edu.cn/simple/
??豆瓣(douban) http://pypi.douban.com/simple/
??清華大學 https://pypi.tuna.tsinghua.edu.cn/simple/
??中國科學技術大學 http://pypi.mirrors.ustc.edu.cn/simple/
修改源方法:
臨時使用:
可以在使用pip的時候在后面加上-i參數(shù),指定pip源
pip install scrapy -i https://pypi.tuna.tsinghua.edu.cn/simple
永久修改:
linux:
修改 ~/.pip/pip.conf (沒有就創(chuàng)建一個), 內容如下:
[global]
timeout = 6000
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
trusted-host = pypi.tuna.tsinghua.edu.cn
windows:
直接在user目錄中創(chuàng)建一個pip目錄,如:C:\Users\xx\pip,在pip 目錄下新建文件pip.ini,內容如下
或者按照網(wǎng)友的建議:win+R 打開用戶目錄%HOMEPATH%,在此目錄下創(chuàng)建 pip 文件夾,在 pip 目錄下創(chuàng)建 pip.ini 文件, 內容如下
[global]
timeout = 6000
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
trusted-host = pypi.tuna.tsinghua.edu.cn
```
## 虛擬環(huán)境
> 虛擬環(huán)境就是在當前的系統(tǒng)環(huán)境中,去配置另外一個python的運行環(huán)境,是可以創(chuàng)建多個不同的虛擬環(huán)境。
>
> python的虛擬環(huán)境相互獨立,互不影響。
+ 虛擬環(huán)境中可以在沒有權限的情況下安裝新的庫(Linux系統(tǒng)中可能會出現(xiàn)的問題)
+ 不同的應用可以使用不同的庫或不同的版本。
+ 虛擬環(huán)境中的庫升級也不影響其它環(huán)境
+ 虛擬環(huán)境可以作為一個項目的專有環(huán)境。在需要部署時,一鍵導出項目的所需要的包
### 如何去使用python的虛擬環(huán)境
1。在pycharm中可以直接創(chuàng)建虛擬環(huán)境
#### 2。自己安裝獨立的虛擬環(huán)境
1. #### 創(chuàng)建虛擬環(huán)境
`python -m venv 虛擬環(huán)境名`
2. #### 進入虛擬環(huán)境,激活虛擬環(huán)境
? + linux
? ```shell
? # 使用 source 命令 去執(zhí)行 v1/bin/ 目錄下的 activate
? localhost:code yc$ source v1/bin/activate
? (v1) localhost:code yc$
? ```
? + windows
? ```shell
? # windows系統(tǒng)需要 進入 v1/Scripts/ 這個目錄
? cd v1/Scripts/
? # 運行 activate.bat 文件
? activate.bat
? (v1) F:\code>
? ```
3. #### 接下來就可以在虛擬環(huán)境中安裝一些包
`pip install pymysql`
4. #### 查看是否安裝了某個包
`pip show pymysql` 如果安裝過則能顯示信息。
5. #### 退出虛擬環(huán)境
? + linux :? deactivate
? + Windows: 直接ctrl+c
6. #### 導出當前環(huán)境中所有安裝過的包
```shell
# 查看所有安裝的包
pip list
'''
Package? ? ? Version
------------ -------
Click? ? ? ? 7.0? ?
Flask? ? ? ? 1.1.1?
itsdangerous 1.1.0?
Jinja2? ? ? 2.10.3
MarkupSafe? 1.1.1?
pip? ? ? ? ? 19.0.3
PyMySQL? ? ? 0.9.3?
setuptools? 40.8.0
Werkzeug? ? 0.16.0
'''
# 導出所有包到文件
pip freeze > ./requirements.txt
```
7. #### 刪除環(huán)境
退出虛擬環(huán)境后,直接刪除虛擬環(huán)境文件夾即可