Ubuntu/Centos安裝Python3和pip3以及虛擬環境

爲什麼要安裝虛擬環境?

首先虛擬環境是什麼?這個自己百度去
虛擬環境能幹嘛? 這個我來回答你, 比如我自己本地寫了一個Django項目,用的Django1.10版本,而我再github上看到了一個很好的項目, 用的Django2.0版本,這時該怎麼做了?虛擬環境就派上用場了。

1,安裝Python3和pip3

可參考此鏈接
https://tecadmin.net/install-python-3-7-on-centos/

  • Linux操作系統是默認安裝了Python2的, Python3是需要手動安裝的還有包管理工具pip3

方法一: 源碼編譯安裝,適用任意Python版本

這個是Python安裝包的官方文件路徑, 需要那個版本的Python就下那個版本,不同版本,安裝方法通用。
此方法也可以多版本共存,可以直接這樣區分。
>python3.6
>pip3.6
>python3.7
>pip3.7
不建議修改軟連接爲python,因爲開發的時候一般都會使用虛擬環境,在激活虛擬環境的情況下直接使用python就行

https://www.python.org/ftp/python/

比如我安裝Python3.6.5 就下載此版本的包,可按自己需求自己安裝。
https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz

# 不要亂使用yum update命令關於 yum update 的用法和簡介
# https://www.cnblogs.com/sparkbj/p/6146092.html
# 安裝依賴環境包
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel
# yum install gcc openssl-devel bzip2-devel libffi-devel  
# 好接下來我們下載安裝包 源碼安裝(PS:Liux通用,wget命令需要安裝自行搜索如何安裝)
mkdir /home/temp && cd /home/temp  # 非必要步驟 創建一個存放臨時文件夾
wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz

# 解壓
tar -zxvf Python-3.6.5.tgz
# 進入Python3.6.5解壓完後的目錄下
cd Python-3.6.5
# yum/ap-get install sqlite-devel  # 這個是解決後面No module named ‘_sqlite3’問題
# 編譯安裝 熟練的話可以使用&& 把以下三條命令連用
# ./configure --with-ssl   # 如果編譯安裝失敗,可能是要安裝C環境GCC 安裝問題,考慮重裝一遍
# 編譯
./configure --enable-optimizations
# enable-optimizations 參數說明https://stackoverflow.com/questions/41405728/what-does-enable-optimizations-do-while-compiling-python
# 棄用 sudo make install
sudo make altinstall   
#make install 和 make altinstall的區別 https://stackoverflow.com/questions/16018463/difference-in-details-between-make-install-and-make-altinstall   
# 輸入python3.6 測試是否成功
python3.6   
# 輸入pip3.6 測試pip 是否成功
pip3.6
# cenots一類的系統我記得要加軟連接之類的, 我用的ubuntu系統上一步就可以用了,所以我也沒試

方法二 : 系統自帶工具安裝

這個方法二大概率是不行的,建議直接參考方法一
首先更新軟件包

centos類系統 記得用 yum 替換 apt-get

sudo apt-get update   

安裝Python3 # 我這安裝的Python3.6 安裝好後終端輸入Python3 能否進入

sudo apt-get install python3.6   # centos apt-get改成yum安裝 

python3  # 輸入python3 看是否進入交互環境

# 如果安裝好,卻不能進入交互環境 
# 就需要建立軟連接  類似快捷方式 (非必須步驟,有的時候自動給你創建了快捷方式)
find / -name *python3*  # 找到安裝執行路徑
ln -s  /usr/local/python/python3/bin/python3 /usr/bin/python3

關於apt-get 問題: Unmet dependencies. Try ‘apt-get -f install’ with no packages (or specify a solution)
解決方式: https://askubuntu.com/questions/833807/unmet-dependencies-try-apt-get-f-install-with-no-packages-or-specify-a-solu

安裝pip3 # pip3 list 試試看能不能看到依賴包

sudo apt-get install python3-pip
# 如果不能安裝試下以下安裝方式  2019/03 更新
# centos類系統啓用EPEL倉庫 yum --enablerepo=extras install epel-release
# sudo apt-get install python36-setuptools   
# sudo easy_install pip3  # 可以參照以下內容  網站打開慢打不開 查看我之前轉載博客
# sudo easy_install-3.6 pip  # 上面安裝不上 用這種 
https://stackoverflow.com/questions/32618686/how-to-install-pip-in-centos-7
# https://pypi.org/simple/pip/   # pip安裝包的官方路徑 最後實在不行可以考慮 手動安裝
# 強制重新安裝pip
python3 -m pip install --upgrade --force-reinstall pip

ps:上面不能直接安裝的時候可以源碼安裝(2018/10月更新博客內容)


2019年2月更新

比較流行的還有一種用法就是用 requests作者 kennethreitz 的 pipenv
參考《Flask Web開發實戰》作者李輝對pipenv的介紹
https://zhuanlan.zhihu.com/p/37581807

  • 簡單使用
# 安裝pipenv   無論pip版本都可以安裝,通用
pip install pipenv     
# 進入你的項目下 安裝pipenv虛擬環境 選擇python版本
cd /you_project_path  # pipenv 是以項目區分,務必要進入你的項目目錄下在操作
pipenv install --python 3.6  # 注意 --python空格3.6

# 激活虛擬環境 同時會打印  `虛擬環境安裝目錄`
pipenv shell
# 我個人都是直接pipenv 和 自帶pip結合着使用,因爲pipenv 實測安裝還是其他太慢
# 然後我就直接用pip
# 服務器部署一般會用絕對路徑, 在輸入pipenv shell時會輸出 `虛擬環境安裝目錄`


# 不激活虛擬環境運行程序   
pipenv run python demo.py
# 安裝依賴包 (卸載uninstall 都和pip類似) 缺點會發現pipenv 安裝特別慢。
pipenv install demo_package

安裝虛擬環境 建議使用pipenv

sudo pip3 install virtualenv

建立虛擬環境的存放文件夾

mkdir ~/.virtualenvs

好現在已經可以創建虛擬環境了

cd ~/.virtualenvs    # 進入那個目錄
virtualenv spider_py3 -ppython3   # 創建虛擬環境 spider_py3 是虛擬環境名字, -p指定Python版本(默認Python2)
source spider_py3/bin/activate    # 進入虛擬環境  OK了

deactivate   # 退出 一般到這就可以了
# 話說我一般到這就夠了 下面那個管理虛擬環境的工具 我在服務器上也用不着,本地開發pycharm就替我管理了
#如果提示 command not found
sudo find / -name virtualenv    # 直接這樣搜索這個路徑
#再次創建 
/your_path/virtualenv spider_py3 -ppython3

但是上面那個有點麻煩 每次進入都要手動路徑

有個管理工具特別方便

sudo pip3 install virtualenwrapper

修改配置文件

sudo vim ~/.bashrc
輸入大寫G進入最後一行 # 不會vi基本命令的自行百度
添加以下數據
export WORK_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh #注意單詞不要拼寫錯誤

啓用生效

source ~/.bashrc

查看和切換虛擬環境

workon # 單輸入這個回車 查看所有的虛擬環境

切換虛擬環境

workon 環境名 # 切換

創建虛擬環境 tip: 終端下輸入mkvir 再按Tab自動補齊 後面的命令一樣

mkvirtualenv 環境名 -ppython3 # 指定虛擬環境名 -p指的Python版本

退出虛擬環境

deactivate

差不多就這些, 所有創建的虛擬環境都在~./virtualenvs 這個文件夾下,
這個文件名字和目錄可以自定義。
寫這個的目的是剛剛要配置一個新的服務器,梳理以下思路,網上查了好幾篇文章才成功
希望看到我這一篇文章就足夠了,希望能幫到你。

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