美文网首页
《Python搭车客指南》阅读笔记-环境篇

《Python搭车客指南》阅读笔记-环境篇

作者: ryan8877 | 来源:发表于2018-07-14 22:52 被阅读22次

    requests是Python社区一个非常知名的http请求库,我最近也在使用他完成了一个很简陋的代理IP请求,做一些事情。它的作者叫Kenneth Reitz,一个非常知名的Python程序员,以前是个胖子,减肥后变得非常帅,感觉非常非常励志。

    这位Python大神写了一个关于Python的文档叫《The Hitchhiker’s Guide to Python!》,中文名字如题所示,Python搭车客指南,如果大家熟悉一本书叫《银河系搭车客指南》的话,一定会对这个名字会心一笑。

    最近个人在系统的学习Python,由于之前的工作原因,自身积累的都是一些零散的知识,比如写个几百行的脚本跑跑数据,写个几个页面的网站之类的。知识无法形成体系,能写出Python代码,不能够做大规模的Python工程,知识总是停留在皮毛阶段。

    开始准备系统学习Python的时候,发现没有什么特别好用的教程,国人写的教程简直不能看,百度上面的博客老旧到令人发指。找来找去发现了这个教程,如获至宝。我接下来可能要花几周的时间去读完这个在线教程,阅读笔记将以博客的形式展示出来。我不会翻译所有内容,仅仅是读自己需要的东西,然后记录成笔记,还是建议英文好的同学自行读英文。

    在Mac OS上安装Python3

    最近的Mac OS X High Sierra上面系统默认的Python版本还是2.7,现在社区都已经全面转向Python3了,所以在Mac上安装Python3是很有必要的。

    安装Python3的前置条件:

    首先,要安装XCode,直接在Mac App Store上面下载。

    其次,安装完成XCode之后,就要安装Command Line Tools或者安装OSX-GCC-Installer这个环境,不过个人推荐Command Line Tools,打开终端,输入命令xcode-select --install即可安装,如下图:

    image

    终端是iTerm2 + Oh My Zsh

    然后,安装Homebrew,见官方文档。 Homebrew安装完成之后,在~/.profile里面添加路径(不是很了解Linux/Unix环境变量的同学可以网上搜索一下教程),添加路径: export PATH=/usr/local/bin:/usr/local/sbin:$PATH,然后在终端输入source ~/.profile。这样就可以使用Homebrew的命令行命令了。

    输入brew install python,漫长等待后,安装完成。

    输入pip -v,得到如下输出:

    image

    可以看到pip是关联Python3.7。

    Pipenv & Virual Environments

    Pipenv安装与使用

    Python的virtual environments是帮助我们实现Python开发环境的隔离,原因是做开发的时候,基本不可能现在一套环境就能适应全部的项目,很大的可能是一个项目需要Django1.0,而最新的Django版本是1.8,所以我们需要Pipenv和Virual Environments来建立隔离开发项目。

    首先需要安装Pipenv, Pipenv是Python工程的一个依赖管理工具,如果你对Node.js的npm或者Ruby的bundler很熟悉的话,就可以很好的理解这个工具。

    pip install --user pipenv

    安装完成后,在相应的Python工程文件夹里面安装需要的包,例如打开终端,创建一个myproject目录,终端进入目录,输入pipenv install requests。此命令行运行完成后,myprojects文件夹里面有两个文件,如下图:

    image

    Pipfile的作用是跟踪管理你的项目依赖的包,加入你想把你的项目分享给其他的人的时候,别人可以通过Pipfile安装依赖的包。

    前面我们已经在myproject文件夹下面安装了requests,下面来介绍一下如何使用刚刚安装的requests库。验证方式很简单,写三行代码即可。

    import requests
    response = requests.get('https://httpbin.org/ip')
    print('Your IP is {0}'.format(response.json()['origin']))

    运行 pipenv run python main.py

    结果如下:

    image

    使用pipenv run python main.py这个命令去运行main.py,是为了保证刚才使用pipenv安装的包可以被main.py使用。如果你觉得这个命令行太长,你可以先使用pipenv shell进入pipenv的shell环境,再使用python main.py运行脚本,得到的效果是一样的。

    到这里为止,你已经可以很愉快的使用Pipenv安装Python的包了,如果还想了解的更加深入一些,请继续往下看。

    Virtualenv的安装与使用

    virtualenv可以创建一个完全独立的Python开发环境,通过virtualenv创建一个具有Python运行环境且包含相应的依赖文件的独立运行环境。Virtualenv可以单独使用,可以和Pipenv共存。

    安装 pip install virtualenv

    安装完成后,输入virtualenv --version,得到如下图所示的virtualenv版本信息:

    image

    为我们的项目创建一个virtual environment运行环境,按照下面的步骤所示:

    创建项目文件夹 mkdir my_project_folder

    进入项目文件夹 cd my_project_folder

    使用virtualenv创建项目 virtualenv my_project

    等待运行完成之后,进入my_project目录,可以看到如下目录:

    image

    执行source ./bin/activate,即可进入独立的Python环境,可以在此环境下面安装相关的Python库。

    执行deactivate,离开这个独立的Python环境。

    执行pip freeze > requirements.txt,就可以把工程的相关的库信息保存在文本文件里面。工程发送给相关的开发者,开发者可以依据requirements.txt文件执行pip install -r requirements.txt来安装相关的库。

    virtualenvwrapper使用

    virtualenvwrapper是基于virtualenv的封装,提供了比virtualenv更好友好的命令行方式去使用virtualenv。这个工具亦可以和virtualenv共同存在,不会有什么冲突。题外话,个人比较喜欢virtualenv,主要是virtualenv更加直观和具体。

    执行 pip install virtualenvwrapper进行安装。

    执行 export WORKON_HOME=~/Envs

    执行 source /usr/local/bin/virtualenvwrapper.sh

    即可使用virtualenvwrapper,如果按照以上的步骤去做,在Mac OS High Sierra上面是无法成功。这是由于Mac OS里面的Python环境还是Python2.7会对virtualenvwrapper产生一些问题,解决按照这个链接

    安装完成之后,就可以使用virtualenvwrapper。

    执行 mkvirtualenv my_project 创建运行环境。

    执行 workon my_project 进入创建的运行环境。

    执行 deactivate 离开运行环境。

    执行 rmvirtualenv my_project 删除运行环境。

    其他命令行大家自行研究。

    virtualenv-burrito

    virtualenv-burrito是一个封装virtualenv + virtualenvwrapper的单命令行工具。

    autoenv

    autoenv这个工具可以帮助我们进入包含.env的virtualenv运行环境的文件夹,自动激活当前环境。

    Mac OS X的安装方式:

    brew install autoenv

    相关文章

      网友评论

          本文标题:《Python搭车客指南》阅读笔记-环境篇

          本文链接:https://www.haomeiwen.com/subject/fsdupftx.html