您好,登錄后才能下訂單哦!
小編給大家分享一下Python本地開發環境如何搭建,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
一:概述
眾所周知 python 開發過程中各種版本共存是比較常見的事情,所以就要求我們本地有一個可以快速創建,自由切換不同 python 版本的環境,嘗試不同方案后推薦如下組合,希望可以給來幫助。
1. pyenv
主要側重管理本地不同python版本
2. virtualenv
主要側重于本地不同項目之間版本差異管理
3. virtualenvwrapper
從名字就可以看出是對 virtualenv 的封裝,更便捷高效的使用virtualenv
二:安裝
pyenv
github地址:https://github.com/pyenv/pyenv,README里有詳細安裝步驟
virtualenv,virtualenvwrapper
文檔地址
https://virtualenvwrapper.readthedocs.io/en/latest/index.html#
這兩個直接用 pip 安裝即可。附上我的 .zshrc 配置內容
# pyenv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
if command -v pyenv 1>/dev/null 2>&1; then
eval "$(pyenv init -)"
fi
# virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/py_venv_projects
export VIRTUALENVWRAPPER_PYTHON=/Users/spring/.pyenv/shims/python
source /usr/local/bin/virtualenvwrapper.sh
*注意:
由于virtualenv,virtualenvwrapper依賴于python環境,所以確保通過pyenv管理的python版本里安裝了這兩個包。比如通過pyenv安裝了一個新的python版本,切換到這個版本后要安裝這兩個包。
三:出發前準備
*)pyenv訪問慢的問題
pyenv安裝python版本默認是從python.org下載,訪問特別慢,解決方法有兩種如下:
1. alibaba弄了一個鏡像庫地址如下:https://npm.taobao.org/mirrors/python/
下載要安裝的版本到本地 .pyenv/cache 目錄
λ ~/.pyenv/cache/ pwd /Users/spring/.pyenv/cache 我電腦的目錄λ ~/.pyenv/cache/ lltotal 53120-rw-r--r-- 1 spring staff 13M 6 7 17:18 Python-2.6.9.tar.gz-rwxrwxrwx@ 1 spring staff 13M 6 7 17:13 Python-2.6.9.tgz
完后執行 pyenv install 2.6.9 即可安裝成功。
2. 修改默認地址
修改pyenv安裝路徑下要安裝python的版本,比如下面我要裝2.6.9版本
vim /usr/local/Cellar/pyenv/1.2.18/plugins/python-build/share/python-build/2.6.9
#require_gcc
install_package "openssl-1.0.2k" "https://www.openssl.org/source/old/1.0.2/openssl-1.0.2k.tar.gz#6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0" mac_openssl --if has_broken_mac_openssl
install_package "readline-8.0" "https://ftpmirror.gnu.org/readline/readline-8.0.tar.gz#e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461" mac_readline --if has_broken_mac_readline
# 下面這行是原先的注釋掉
#install_package "Python-2.6.9" "https://www.python.org/ftp/python/2.6.9/Python-2.6.9.tgz#7277b1285d8a82f374ef6ebaac85b003266f7939b3f2a24a3af52f9523ac94db" ldflags_dirs standard verify_py26 ensurepip
# 下面這行是新增的,可以看到地址換成一個快一點的
install_package "Python-2.6.9" "https://npm.taobao.org/mirrors/python/2.6.9/Python-2.6.9.tgz#7277b1285d8a82f374ef6ebaac85b003266f7939b3f2a24a3af52f9523ac94db" ldflags_dirs standard verify_py26 ensurepip
完后執行 pyenv install 2.6.9 即可安裝成功。
*) virtualenvwrapper不用最新本地python版本創建虛擬環境問題
virtualenvwrapper默認會 “ 記住 ” python的版本,當下一次切換了python的版本后創建出來的虛擬環境還是之前的版本,設置下面環境變量即可
export VIRTUALENVWRAPPER_PYTHON=/Users/spring/.pyenv/shims/python
四:小試牛刀
1)查看本地當前python版本
λ ~/ pyenv versions 查看所有已經安裝的版本 system* 2.7.16 (set by /Users/spring/.pyenv/version) 3.7.2 3.8.2λ ~/ pyenv version 查看當前的版本2.7.16 (set by /Users/spring/.pyenv/version)λ ~/ pyenv global 3.8.2 全局切換一個版本λ ~/ pyenv version 查看發現已經切換過來了3.8.2 (set by /Users/spring/.pyenv/version)
2) virtualenvwrapper
λ ~/ virtualenvwrapper 列出可用命令
λ ~/ mktmpenv 創建一個零時的虛擬環境,退出后就會刪除掉created virtual environment CPython3.8.2.final.0-64 in 285ms creator CPython3Posix(dest=/Users/spring/.virtualenvs/tmp-44fd4f4fd9f4727, clear=False, global=False) seeder FromAppData(download=False, pip=latest, setuptools=latest, wheel=latest, via=copy, app_data_dir=/Users/spring/Library/Application Support/virtualenv/seed-app-data/v1.0.1) activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivatorvirtualenvwrapper.user_scripts creating /Users/spring/.virtualenvs/tmp-44fd4f4fd9f4727/bin/predeactivatevirtualenvwrapper.user_scripts creating /Users/spring/.virtualenvs/tmp-44fd4f4fd9f4727/bin/postdeactivatevirtualenvwrapper.user_scripts creating /Users/spring/.virtualenvs/tmp-44fd4f4fd9f4727/bin/preactivatevirtualenvwrapper.user_scripts creating /Users/spring/.virtualenvs/tmp-44fd4f4fd9f4727/bin/postactivatevirtualenvwrapper.user_scripts creating /Users/spring/.virtualenvs/tmp-44fd4f4fd9f4727/bin/get_env_detailsThis is a temporary environment. It will be deleted when you run 'deactivate'.λ ~/.virtualenvs/tmp-44fd4f4fd9f4727/ 這個地方標識已經在虛擬環境了 (env: tmp-44fd4f4fd9f4727)λ ~/.virtualenvs/tmp-44fd4f4fd9f4727/ python -V (env: tmp-44fd4f4fd9f4727)Python 3.8.2λ ~/.virtualenvs/tmp-44fd4f4fd9f4727/λ ~/.virtualenvs/tmp-44fd4f4fd9f4727/ deactivate 退出虛擬環境 (env: tmp-44fd4f4fd9f4727)Removing temporary environment: tmp-44fd4f4fd9f4727Removing tmp-44fd4f4fd9f4727...λ ~/.virtualenvs/
我們經常會在項目里為項目創建一個單獨的運行環境,如下:
mkvirtualenv -a ./ -r requirements.txt 虛擬環境名稱
可以看到創建虛擬環境過程中通過 -r requirements.txt 安裝項目依賴包,虛擬環境名稱推薦使用和項目名稱一樣或者使用便于識別的名稱。
*注意 :
可以通過 --python=python3.5 或者 -p 指定創建虛擬環境時候的python版本,常用于比如本地是2.7,但是要創建一個3.5的,但是又不想把本地的改了。通過該選項創建。
λ ~/Documents/secTooles/MyProject/ master* workon 查看當前在那個環境里,后面跟名稱可以直接切換到指定環境 (env: OneForAll)MyProject
刪除不用的環境
λ ~/Documents/secTooles/OneForAll/ master* rmvirtualenv MyProject
以上是“Python本地開發環境如何搭建”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。