pyenv下的升级
背景
下午想个异步的问题,一直没有搞明白。有点烦躁。看了下pyenv的环境,有了新的python版本了,升级一下。
升级步骤
-
将已经安装的包导出个列表出来
pip freeze >requirements.txt
要说明的是,这个pip其实是pip3,因为在bash_profile里面做了alias,指向的是python3.6.4的路径。
-
在pyenv环境下安装3.7.0版本的python
pyenv install 3.7.0
-
然后将requirements.txt中包含的包名和版本号进行分离,我只要最新的包
-
导出的requirements.txt是这样的
bleach==2.1.2 bs4==0.0.1 ccy==0.7.0 certifi==2018.1.18 cffi==1.11.4 chardet==3.0.4
-
做个简单的过滤,只要包名,然后生成新文件new.txt
-
-
然后在新的python3.7的bin下面运行下面的命令进行包的安装
./pip3 install -r ~/new.txt
-
安装完毕后设定global为3.7.0
pyenv global 3.7.0
-
在bash_profile里面做个修改,将原来的3.6.4的路径注释掉,然后将3.7.0的添上去
alias python="python3.7" export PATH="/Users/dahunhun/.pyenv/versions/3.7.0/bin:$PATH" export PATH="/Users/dahunhun/.pyenv/versions/3.7.0/lib:$PATH"
-
再source ~/.bash_profile一下,让其生效
-
开一个新的终端窗口,运行下python,看看是不是这样的
Python 3.7.0 (default, Nov 15 2018, 17:21:37) [Clang 10.0.0 (clang-1000.10.44.4)] on darwin Type "help", "copyright", "credits" or "license" for more information.
-
跑一下原来写的代码,发现都ok,3.6.4先留着,过一段时间再删除