centos7 安装 python3.5
centos7 安裝 python3.5
?
一、?python虛擬環境virtualenv
VirtualEnv用于在一臺機器上創建多個獨立的python運行環境,VirtualEnvWrapper為前者提供了一些便利的命令行上的封裝。
Virtualenv是一個非常好的virtual python environment builder,他最大的好處是,可以讓每一個python項目單獨使用一個環境,而不會影響python系統環境,也不會影響其他項目的環境。
Virtualenv可用于創建獨立的Python環境,在這些環境里面可以選擇不同的Python版本或者不同的packages,并且可以在沒有root權限的情況下在環境里安裝新套件,互相不會產生任何的影響。
二、為什么要用virtualenv
- 隔離項目之間的第三方包依賴,如A項目依賴django1.2.5,B項目依賴django1.3。
- 為部署應用提供方便,把開發環境的虛擬環境打包到生產環境即可,不需要在服務器上再折騰一翻。在服務器上都不用安裝virtualenv,直接將virtualenv創建的目錄拷貝到服務器,修改路徑,進行虛擬環境遷移就可以用了。
-?還可以用在沒有root權限的python環境配置上,如果沒有root權限,可以先自己搞一個virtualenv,再在virtualenv中使用pip安裝。(系統中沒有pip,并且也沒有root權限使用sudo apt-get安裝)
三、安裝的庫的位置
env/Lib/site-packages/目錄里,而不是在系統的python的Lib/site-packages目錄里,這樣你就知道為什么虛擬環境是分開的了吧。
Note:virtualenv 創建的虛擬環境與主機的 Python 環境完全無關,你主機配置的庫不能在 virtualenv 中直接使用。你需要在虛擬環境中利用 pip install 再次安裝配置后才能使用。
?
?
四、?安裝python3.5可能使用的依賴
yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
?
五、?到python官網找到下載路徑, 用wget下載
wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz
?
?
?解壓tgz包
tar -zxvf Python-3.5.1.tgz
?把python移到/usr/local下面
mv Python-3.5.1 /usr/local
?刪除舊版本的python依賴
ll /usr/bin | grep python
rm -rf /usr/bin/python
?進入python目錄
cd /usr/local/Python-3.5.1/
?配置
./configure
?編譯 make
make
?編譯,安裝
make install
?刪除舊的軟鏈接,創建新的軟鏈接到最新的python
rm -rf /usr/bin/python
ln -s /usr/local/bin/python3.5 /usr/bin/python
python -V
?
安裝完以后,創建一個虛擬環境,然后在安裝virtualenvwrapper
?vim /etc/profile
在最后加入下面內容
PYTHON_HOME=/usr/local/python2.7/bin/
WORKON_HOME=$HOME/.virtualenvs?# 放所有虛擬環境的地方
PROJECT_HOME=$HOME/dev?# 放所有項目的地方
export PATH=$PATH:$PYTHON_HOME:$WORKON_HOME:$PROJECT_HOME
保存退出
source?/usr/local/python2.7/bin/virtualenvwrapper.sh
如果沒有配置這個文件,創建的虛擬環境的路徑,就是所在的當前路徑。
六、virtualenv ENV?????????????????????
#ENV 為環境的名字,可以任意設置,其實就是一個文件夾,在home下的用戶名文件夾下可以找到。
?
七、指定virtualenv中的python版本
virtualenv --no-site-packages --python=python2.7 env
? ?–no-site-packages表示不包括系統全局的Python安裝包,這樣會更令環境更干凈
? ?–python=python2.7指定Python的版本未系統已經安裝了的Python2.7/
?
八、source ENV/bin/activate? ?(激活虛擬環境)
#這樣進進入了virtualenv的虛擬開發環境。
進入虛擬環境以后命令行最開始的地方會顯示(ENV),代表已經進入了這個環境,然后就可以安裝virtualenvwrapper和Django了
?
九、輸入命令行pip install virtualenvwrapper
這里可以不用sudo,因為在virtualenv里,不用管理權限也算是很方便的設計之一。
virtualenvwrapper安裝后,它會把virtualenv列為依賴包,所以會自動安裝。
?
十、虛擬環境操作常用命令:
-
workon?切換到環境
-
deactivate?注銷當前環境
-
lsvirtualenv?列出所有環境
-
rmvirtualenv?刪除環境
-
cpvirtualenv?復制環境
-
cdsitepackages?cd到當前環境的site-packages目錄
-
lssitepackages?列出當前環境中site-packages內容
-
setvirtualenvproject?綁定現存的項目和環境
-
wipeenv?清除環境內所有第三方包
?
虛擬環境遷移
當需要將虛擬環境env轉移到同一臺電腦的另一個目錄下時
或者當需要將虛擬環境env1遷移或復制到另一個虛擬環境(可能不在同一臺機器上)env2時,首先仍然需要在目的機器上安裝pip和virtualenv,然后采用以下方法之一安裝其他的package:
1.直接將env1里的文件全部復制到env2里,然后修改涉及路徑的文件。此種方法可能正常使用,但顯然不是好辦法(不過網絡不好的時候lz就是用的這個)。
修改的路徑主要是虛擬環境ubuntu_env/bin目錄下的文件執行程序的路徑:如active, pip, ipython等等(幾乎所有文件的路徑,不過有的命令你不用的可以不改)。
如將虛擬環境ubuntu_env/bin/active中的路徑修改一下:
其中的VIRTUAL_ENV路徑其實最好修改成現在的絕對路徑VIRTUAL_ENV="/media/pika/files/mine/ENV/ubuntu_env";
將虛擬環境ubuntu_env/bin/pip和pip3和pip3.4中的路徑修改成絕對路徑:#!/home/pipi/ENV/ubuntu_env/bin/python3
注意最好不要將路徑修改成相對路徑。如果修改的ipython執行路徑為相對路徑#!./bin/python3,是相對這個ipython.py執行的路徑,激活virtual env后如果在另一個目錄下輸入python就會出錯找不到或者直接調用系統中的python了,而不是virtual env中的python,而原始的默認路徑使用絕對路徑就可以在virtual env激活后在任意目錄都可以執行ipython而不出錯!
?
2. 使用requirements.txt
進入原虛擬環境env1,然后執行pip freeze > requirements.txt將包依賴信息保存在requirements.txt文件中。
最好手動調整一下順序,比如numpy和scipy要在matplotlib前面安裝;另外如果想安裝最新版本的,再將后面的版本號==1.9.1什么的刪除。
然后進入目的虛擬環境env2,執行pip install -r requirements.txt,pip就會自動從網上下載并安裝所有包。
虛擬環境env2如果是env1的拷貝,最好先pip uninstall -ry requirements.txt,再pip install -r requirements.txt
3.pip默認會從pypi服務器(http://pypi.python.org/simple)下載包的安裝文件,如果目的機器無法連外網,則可以采用以下辦法:
3.1搭建自己的pypi服務器。專業的,可以使用第三方的軟件包來搭建一個完整的pypi鏡像服務器,參考http://www.worldhello.net/2011/03/14/2357.html。更快速的方法只需要一條命令python -m SimpleHTTPServer即可完成搭建服務器,具體的目錄結構可參考原pypi服務器,簡而言之,就是把安裝文件打包放入目錄即可。搭建好服務器之后,在目的虛擬環境中,就可以使用pip來安裝了,命令如:pip install -i http://127.0.0.1:8000/ -r requirements.txt
3.2如果你實在不想搭建pypi服務器,也有辦法。首先將所有包的安裝文件下載下來,可以手動下載,也可以使用pip,如pip install -d /path/to/save/ -r requirements.txt,然后自己修改requirements.txt文件,將每一行改成對應的包的安裝文件的路徑。最后在目的虛擬環境中使用pip安裝,如pip install -r requirements.txt即可。
3.3還有一種途徑,就是pip提供的bundle選項。首先執行pip bundle MyEnv.pybundle -r requirements.txt,將生成一個MyEnv.pybundle文件,該文件夾包含所有包的安裝文件(注意必須后綴名必須是.pybundle),默認是重新從pypi服務器下載安裝文件的,如果愿意,也可以利用3.1中的方法,指定本地的pypi服務器。然后在目的虛擬環境中執行pip install MyEnv.pybundle即可
所以說,lz還是更喜歡docker中配置的python開發環境。
虛擬環境遷移出錯
方法1虛擬環境遷移后包引入出錯
from scipy import stats
ImportError: liblapack.so.3: cannot open shared object
這時只需要pip install scipy重新安裝一下就ok了。
ImportError: libBLT.2.4.so.8.6: cannot open shared object file: No such file or directory, please install the python3-tk package
也要重新安裝matplotlib
所以最好使用方法2遷移。
?
下面關于Python的文章您也可能喜歡,不妨看看:
Linux下Python的安裝以及注意事項??http://www.linuxidc.com/Linux/2015-11/124861.htm
Ubuntu?14.04 下安裝使用Python rq模塊??http://www.linuxidc.com/Linux/2015-08/122441.htm
無需操作系統直接運行 Python 代碼??http://www.linuxidc.com/Linux/2015-05/117357.htm
CentOS上源碼安裝Python3.4??http://www.linuxidc.com/Linux/2015-01/111870.htm
《Python核心編程 第二版》.(Wesley J. Chun ).[高清PDF中文版]?http://www.linuxidc.com/Linux/2013-06/85425.htm
《Python開發技術詳解》.( 周偉,宗杰).[高清PDF掃描版+隨書視頻+代碼]?http://www.linuxidc.com/Linux/2013-11/92693.htm
Python腳本獲取Linux系統信息?http://www.linuxidc.com/Linux/2013-08/88531.htm
在Ubuntu下用Python搭建桌面算法交易研究環境?http://www.linuxidc.com/Linux/2013-11/92534.htm
Python 語言的發展簡史?http://www.linuxidc.com/Linux/2014-09/107206.htm
轉載于:https://www.cnblogs.com/liuyansheng/p/6306349.html
總結
以上是生活随笔為你收集整理的centos7 安装 python3.5的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: npm install引起的项目崩溃(T
- 下一篇: Python4 高级特性