多個Python版本的管理
阿新 • • 發佈:2020-07-20
前言
最近需要用到Locust(一套ython編寫的測試框架)來進行測試工作,發現新的版本只支援3.x版本的python,而我們使用的CentOS7只安裝了python2.7版本,直接對python版本進行升級比較麻煩,於是使用pyenv來實現python的多版本管理,在此簡單記錄。
正文
什麼是pyenv
pyenv是一個簡單的python版本管理工具,遵循UNIX設計傳統,即一個工作做好一件事,專案最早是從ruby的相專案fork過來的,後續對python進行了適配。
From: https://github.com/pyenv/pyenv
安裝方式
From: https://github.com/pyenv/pyenv-installer
使用pyenv安裝python3.7
本質上pyenv也是把python原始碼包下載並編譯,所以需要事先安裝編譯需要用到的依賴:
yum -y install zlib zlib-devel yum -y install bzip2 bzip2-devel yum -y install ncurses ncurses-devel yum -y install readline readline-devel yum -y install openssl openssl-devel yum -y install openssl-static yum -y install xz lzma xz-devel yum -y install sqlite sqlite-devel yum -y install gdbm gdbm-devel yum -y install tk tk-devel yum -y install libffi libffi-devel
pyenv install 3.7.3
安裝完成的使用
檢視pyenv管理了幾個版本:
# pyenv versions
* system (set by /root/.pyenv/version)
3.7.3
為當前終端切換版本:
[root@VM-8-74-centos ops]# pyenv local 3.7.3 [root@VM-8-74-centos ops]# python Python 3.7.3 (default, Jul 20 2020, 16:21:50) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> exit()
為所有終端切換版本:
[root@VM-8-74-centos ops]# pyenv global 3.7.3
[root@VM-8-74-centos ops]# python
Python 3.7.3 (default, Jul 20 2020, 16:21:50)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
安裝pipenv
和pyenv相搭配的,還可以安裝pipenv,可以為pyenv環境安裝相應的包
pip install pipenv