搭建Python开发环境(Mac)

准备

Python官网:

https://www.python.org/

Python官方文档:

https://docs.python.org/

环境搭建

简介

pipenvPython官方推荐的包管理工具。可以说,它集成了virtualenv, pippyenv三者的功能。其目的旨在集合了所有的包管理工具的长处,如: npm, yarn, composer等的优点。

它能够自动为项目创建和管理虚拟环境,从Pipfile文件添加或删除安装的包,同时生成Pipfile.lock来锁定安装包的版本和依赖信息,避免构建错误。

pipenv主要解决了如下问题:

  • 不用再单独使用pipvirtualenv, 现在它们合并在一起了
  • 不用再维护requirements.txt, 使用PipfilePipfile.lock来代替
  • 可以使用多个python版本(python2python3)
  • 在安装了pyenv的条件下,可以自动安装需要的Python版本

准备

1、pyenv是什么?

pyenv是Python版本管理工具,利用它我们可以在同一台电脑上安装多个版本的Python,这个过程非常简单。

2、 pipenv是什么?

pipenv是Python官方推荐的包管理工具,用来管理安装包的。类似于npm包。

3、利用pipenv和pyenv管理多个相互独立的Python虚拟开发环境。

1. 安装pyenv—用来安装多个Python版本

1.1、安装或升级pyenv
首先安装pyenv,如果你是Mac电脑,那么推荐使用Homebrew来安装。

brew update
brew install pyenv

1.2、用pyenv安装Python
安装完pyenv,安装Python就简单了。我电脑上系统自带的是Python2.7.10,我准备再安装一个Python2.7.14和Python3.6.4,以后开发时候就用自己安装的Python2.7.14或者Python3.6.4了。

pyenv install 3.6.4 2.7.24
pyenv rehash

执行命令pyenv versions,如果输出结果如下,那么说明我们已经安装好了Python2.7.14和Python3.6.4:

pyenv versions
  system
* 2.7.14
* 3.6.4 

现在我们就可使用Python2.7.14和Python3.6.4了。执行这个下面python2、python3、python指令可以进入到不同版本的Python环境。

pyenv global属于全局切换,pyenv local属于局部切换,局部切换只在所在切换时的目录中生效。可以通过如下命令来切换版本:

$: pyenv global 3.6.4
$: pyenv versions
  system
  2.7.14
* 3.6.4 (set by /Users/chunming.liu/.pyenv/version)
pyenv local 2.7.14

重要事情说三遍

不过有了pipenv,我们不用手动切换Python版本了,也就是安装完了pyenv之后不用再去安装具体的Python版本了。

注意:
add --enable-shared for pyenv python installations
https://github.com/pyenv/pyenv/wiki#how-to-build-cpython-with---enable-shared

2. 安装pyenv---用来安装相互独立的虚拟环境

2.1、安装pipenv
如果你是Mac电脑,那么推荐使用Homebrew来安装。

brew install pipenv

执行pipenv,可以查看pipenv的帮助信息。

2.2、为项目建立虚拟环境
默认地,虚拟环境会创建在~/.local/share/virtualenvs目录里面。
如果我们希望在每个项目的根目录下保存虚拟环境目录(.venv),需要在 .bashrc 或 .bash_profile 中配置如下:

export PIPENV_VENV_IN_PROJECT=1

要想使配置生效,执行下source ~/.bashrc或者source ~/.bash_profile。

接下来我们为项目创建虚拟环境。

mkdir pipenv_demo
cd pipenv_demo

pipenv --three # 初始化一个python3虚拟环境
pipenv --two # 初始化一个python3虚拟环境

创建完虚拟环境之后,在pipenv_demo目录下将会看到一个.venv的目录,这个目录就是pipenv_demo项目的虚拟环境。
使用具体的python版本创建虚拟环境,可以执行:

pipenv --python 2.7.14

2.3、为项目安装第三方依赖包
为项目安装自己的依赖包到虚拟环境中,使每个项目拥有相互独立的第三方包,是非常不错的Python的开发实践。安装依赖包到虚拟环境中:

pipenv install flask
pipenv install pytest --dev   # 用于区分需要部署到线上的开发包、只需要在测试环境中执行的包

执行完上面的命令后,检查一下是否安装成功:

$ pipenv graph
Flask==0.12.2
  - click [required: >=2.0, installed: 6.7]
  - itsdangerous [required: >=0.21, installed: 0.24]
  - Jinja2 [required: >=2.4, installed: 2.10]
    - MarkupSafe [required: >=0.23, installed: 1.0]
  - Werkzeug [required: >=0.7, installed: 0.14.1]
pytest==3.4.2
  - attrs [required: >=17.2.0, installed: 17.4.0]
  - pluggy [required: >=0.5,<0.7, installed: 0.6.0]
  - py [required: >=1.5.0, installed: 1.5.2]
  - setuptools [required: Any, installed: 38.6.0]
  - six [required: >=1.10.0, installed: 1.11.0]

2.4 更新 pypi源来提高依赖库安装的速度
在使用pipenv的时候,常常会在安装的时候,一直卡在了 Locking 这里,通过加上 -v 参数,可以看到安装过程中的步骤信息,卡在了下载那里,这时应该可以意识到是因为网络的原因,pipenv创建的 Pipfile 中默认的pypi源是python官方的 https://pypi.python.org/simple。我们国内用户访问下载的时候会很慢

所以,我一般会在创建好Pipfile以后,修改到文件中 source 块下的 url 字段,设置为国内的 pypi 源就好了,我推荐的是清华的pypi源或者阿里源,具体设置如下:

[[source]]
 url = "https://pypi.tuna.tsinghua.edu.cn/simple"
 verify_ssl = true
 name = "pypi"

3、使用虚拟环境进行开发
虚拟环境创建好了之后,就可以在里面进行开发了。
如果在命令行下开发,则在项目目录下执行pipenv shell,就进入到了虚拟环境中,在这个环境中,就已经包含安装过的所有第三方依赖包了,接下来就可以利用这些第三方包进行开发工作了。
如果是用Pycharm进行开发,就更简单了,直接用Pycharm打开项目目录就好了,打开后可以从Pycharm中的左侧导航栏里面看到External Libraries里面显示的是虚拟环境中的Python解释器。

4、删除安装的第三方包
如果是要删除虚拟环境中的第三方包,执行

pipenv uninstall flask

5、安装项目所有的依赖
用git管理项目时候,要把Pipfile和Pipfile.lock加入版本跟踪。这样clone了这个项目的同学,只需要执行

pipenv install

就可以安装所有的Pipfile中 [packages]部分的包了,并且自动为项目在自己电脑上创建了虚拟环境。
如果是想要安装[dev-packages]部分的包,需要执行:

pipenv install -d

上面的方法都是安装Pipfile中列出来的第三方包的最新版本,如果是想安装Pipfile.lock中固定版本的第三方依赖包,需要执行:

pipenv install --ignore-pipfile

如果你的项目之前使用requirements.txt来管理依赖的,那么使用pipenv安装所有依赖可以采用类似pip的方法:

pipenv install -r path/to/requirements.txt

6、团队实践建议

建议团队内开发人员,在自己电脑上都安装pyenv和pipenv。Pipfile和Pipfile.lock加入版本跟踪,.venv不要加入版本管理。为自己的每一个项目建立独立的虚拟环境。

7、扩展命令(了解下就好)

  • 查看虚拟环境python解释器所在位置
pipenv --py
  • 查看虚拟环境所在位置
pipenv --venv
  • 使用更底层的命令pip freeze
pipenv run pip freeze
  • 只在安装开发阶段使用的软件包(和npm类似)
pipenv install pytest --dev
  • 安装Pipfile.lock的所有包(完整移植开发环境)
pipenv sync

参考链接:https://blog.csdn.net/liuchunming033/article/details/79582617
https://blog.windrunner.me/python/pip.html#pip-%E4%B8%8E-pipfile

原文地址:https://www.cnblogs.com/lucaswangdev/p/12287877.html

时间: 2024-11-09 17:49:18

搭建Python开发环境(Mac)的相关文章

快速搭建Python开发环境

快速搭建Python开发环境·Python入门学习速成系列<1> 当我们在学习一门新的技术或者新的编程语言时,经常感觉无从下手.学习初期往往不知道事先应该准备什么:或者刚开始准备,在安装问题就栽了一个大跟头:甚至我们准备完成后,开始学习是,才发现事先应该准备安装的软件没有到位等.这样或那样的问题就困扰我们学习之初,花费了大量的时间. 本文主要介绍在Windows和Linux主流操作系统上快速部署Python开发环境. 准备Python开发环境 在准备部署Python开发环境时,往往会选择不同的

linux中搭建python开发环境

http://blog.csdn.net/pipisorry/article/details/39854707 ubuntu 12.04中搭建python开发环境 一.使用的系统及软件 Ubuntu 12.04 Python 2.7.3 Django 1.4.2 Pycharm 2.6.3 Postgresql 9.1 Virtualenv Virtualenvwrapper Openjdk 开始之前,可以给系统做一下备份.如误安装了Postgresql,出现了大问题就不得不把系统给重装了. 1

在Xcode7中搭建Python开发环境

如果你是从IOS开发转PYTHON,钟情于Xcode :)说实话,不好用,也许我用的少?======================================在Xcode7中搭建Python开发环境 一.开发环境准备 1.安装Xcode 2.找到Mac OS X上安装Python的路径.OSX系统默认安装了python,默认的路径为/usr/bin/python 二.创建项目 1.在项目菜单中,选择Other选项卡下的"Build External System",然后点击&qu

visual studio 2015 搭建python开发环境,python入门到精通[三]

在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo,这里略带一句,其实就"学习python"而言,比较建议使用pycharm,pycharm可以设置VS或者eclipse等多种IDE的编码,可以让绝大部分其他语言使用IDE的习惯者更容易上手.这一点兼容确实做的很好.不过既然这么多园友要求使用vs开发python的话,就介绍一下visual

【Python】Eclipse和pydev搭建Python开发环境

参考资料: http://www.dotnet120.com/page/10545/ 1.准备工作: 下载32位的JDK6 Java的开发包 下载32位的Eclipse 下载Python 2.x 2.安装JDK6 3.安装Eclipse和Python 4.给Eclipse安装PyDev插件 在Help菜单中,选择Install New Software···, 选择Add按钮,Name:PyDev(这个随便起),Location:http://pydev.org/updates(PyDev的更新

Windows搭建python开发环境,python入门到精通[一]

从大学开始玩python到现在参加工作,已经有5年了,现在的公司是一家.net的公司用到python的比较少,最近公司有新项目需要用到python,领导希望我来跟其他同事training,就有了这篇博客,打算将python的training弄成一个简易的python系列,供大家入门使用.Python语言自从20世纪90年代初诞生至今,它逐渐被广泛应用于处理系统管理任务和Web编程.今天就让我们来搭建一个python的开发环境,Windows搭建python开发环境.一切从"Hello world

在Eclipse中搭建Python开发环境

在Eclipse中搭建Python开发环境 来自: http://hi.baidu.com/hqwfreefly/blog/item/2543181d0afd9604314e150e.html 前言 笔者最近迷上了Python,但是一直没有找到满意的IDE.虽然使用Vim编辑器+命令行的方式比较酷,然而一个优秀的IDE确实能让开发速度提升不少.于是笔者想到Eclipse——一个神一样的利器.经过一番曲折,终究修成正果.整理成文,希望对热爱的Python的童鞋有所帮助. 正文 首先我们需要明白一点

Eclipse和PyDev搭建python开发环境

               Eclipse和PyDev搭建python开发环境 1.1总体目标 本文档作为python学习者的入门教程,通过本教程可以了解python用途.语法.在实际工作中的应用. Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.Python是完全面向对象的语言.函数.模块.数字.字符串都是对象.并且完全支持继承.重载.派生.多继承,有益于增强源代码的复用性. Python在执行时,首先会将.py文件中的源代码编译成Python的bytecode(字节

Ubuntu系统下搭建Python开发环境

之前演示了在Windows中安装Pycharm,很简单.下面介绍一下如何在Ubuntu中安装Pycharm 1.更新Python至3.5.1,执行以下命令: sudo add-apt-repository ppa:fkrull/deadsnakes sudo apt-get update sudo apt-get install python3.5 执行完成后,在shell中输入python3.5,出现如下对话框说明Python3.5更新成功. 2.安装JDK8,在终端中输入如下命令: sudo