python和java包管理的不同

java

java需要安装jdk,我们通常使用maven进行包管理,有中央仓库,有本地仓库,项目优先从本地仓库拉取,拉不到会从远程仓库拉取,所有项目用到的包都会放在本地仓库,需要使用的时候在本地拉取即可,高版本的jdk向前兼容,jdk8的编译器可以编译成1.7的版本

python

python与java有很大的不同,由于python为解释执行,没有了编译的过程,所以在执行的过程中,只能由对应的解释器对代码进行解释和执行,这样就造成了,python需要有多个解释器对于代码进行解释执行

接下来就主要介绍下python环境安装过程中遇到的问题,和我自己的理解:

如何安装python开发环境?

  • 通过官网下载直接下载python安装包安装 https://www.python.org/
  • 使用pyenv https://github.com/pyenv/pyenv
  • 使用anaconda  https://www.anaconda.com/

先说结论

推荐使用pyenv和anaconda的方式搭建python环境

对于一个长期使用python的开发者,怎么用都能玩的通,但是,对于python新手来说,使用python,习惯性的想到的肯定是去python官网上下载python,但是这样会出现我们下文中所提到的问题

提出问题

1.同一台电脑上使用python2.7,有的使用了python3.6,如何进行多个版本的开发呢?

pyenv给我们提供了这个功能,我们可以通过pyenv切换当前使用的python版本

按照官网的教程完成安装后,通常使用的方法是:

which python  能够查看当前使用的python解释器

python --version 能够查看当前使用的python的版本

pyenv 查看pyenv的帮助

pyenv version 当前pyenv的解释器的版本

pyenv versions 查看安装的所有python版本

pyenv global <version> 设置全局的python版本

2.同一个python环境,如python3.7下,我有两个程序,分别使用了同一个包的不同版本,如程序1使用tensorflow1.x版本,程序2使用tensorflow2.x版本,如何进行管理呢?

使用virtualenv,创建不同的虚拟环境,将几个程序隔离开

使用pip install virtualenv 在当前的python环境下安装virtualenv工具

命令行输入 virtualenv 查看命令帮助

virtualenv <env_name> 会在当前目录下生成python虚拟环境

因为生产虚拟环境的时候会生成对应的目录,所以,这里建议将目录放在磁盘的同一个目录下,便于以后管理

如果要删除虚拟环境的话,直接删除对应的目录即可

这里举个例子,需要生成tensorflow的虚拟环境

cd ~/venv/python

virtualenv tensorflow

source ~/venv/python/tensorflow/bin/activate

完成了以上操作,我们就已经进入到了虚拟环境里边

使用which python查看,已经切换到了虚拟环境中,这时候再安装任何包,与其他环境都是隔离了,不会造成影响

$ which python
/Users/wentao.jiang/venv/python/tensorflow/bin/python

如果要退出呢,直接使用deactivate即可,因为已经将deactivate的命令加载到了$PATH下,再使用which python

$ which python
/Users/wentao.jiang/opt/anaconda3/bin/python

已经发现切回了源环境

使用了上边的方法,我们已经能够在多个python版本中切换,并且能够在某个版本中创建python的虚拟环境进行隔离,那么,还有anaconda,我们怎么来用呢,换句话说,为什么要使用anaconda呢?

anaconda

  • 集成了很多科学运算相关的库,可以直接使用,避免手动安装库比较繁
  • 有图形化的界面
  • anaconda中有不少教程
  • 集成了jupyterlib工具
  • 使用命令行工具,能够覆盖上边所提到的pyenv和virtualenv的功能

所以anaconda用起来非常的方便

按照官网的教程安装好之后,使用命令,可以直接指定python版本号,指定虚拟环境名称进行创建

conda create -n tensorflow  python=3.7

这样一键式的操作非常方便

conda activate tensorflow   激活tensorflow虚拟环境

conda deactivate   取消当前虚拟环境的激活

可以根据需要,在pyenv和anaconda环境中自由切换,我的电脑中安装了这两种工具,经过一段时间的采坑已经能够比较方便的使用了

一文读懂python本地开发环境配置相关推荐

  1. 一文读懂:本地数据湖丨数据仓库丨云数据湖的利与弊

    数据湖指的是一个中心位置,大量数据以原始的.非结构化的格式存储,其中包含有关数据和惟一标识符的信息.它们存储的数据可以稍后进行处理,以提取有价值的业务见解并推动业务向前发展. 这种类型的灵活组织允许存 ...

  2. python读取枚举_一文读懂Python 枚举

    enum是一组绑定到唯一常数值的符号名称,并且具备可迭代性和可比较性的特性.我们可以使用 enum 创建具有良好定义的标识符,而不是直接使用魔法字符串或整数,也便于开发工程师的代码维护. 创建枚举 我 ...

  3. 西秦的ACE-Python教程 一、Python本地开发环境部署

    西秦的ACE-Python教程 一.Python本地开发环境部署     西秦 级别: 论坛版主 发帖 1357 云币 2782 加关注 写私信 只看楼主 更多操作楼主  发表于: 10-10 从今天 ...

  4. python输入什么就输出什么_一文读懂Python的输入和输出

    本文介绍了Python的输入和输出,既然是Python代码,那么就一定有输出量,那么,Python是如何输出的呢? 输出 用print()在括号中加上字符串,就可以向屏幕上输出指定的文字.比如输出'h ...

  5. erpnext v13 安装部署 + VSCode本地开发环境配置

    ERPNext Version-13 安装生产环境 参考链接 https://discuss.erpnext.com/t/install-frappe-erpnext-v13-beta-from-sc ...

  6. pycharm 开发app_windows及mac下开发Excel, python+xlwings开发环境配置

    背景: 孩子他妈天天excel办公,看她每天大量重复性的工作,她是时候学习python来解放自己了,虽然我不用python ~ ~ 网络搜索 xlwings 是python下非常强大的处理Excel的 ...

  7. 1.Python简介开发环境配置工具准备

    目录: 0.Python是什么 1.Python开发环境配置 1.1 Windows安装Python解释器 1.2 Windows安装pycharm开发工具 1.3 Linux系统中搭建Python开 ...

  8. 一文读懂 Python 开发环境配置

    文章目录 Python 多版本管理 1. 多版本使用需求 2. Windows 下多版本管理[^1] 3. Linux 系统下多版本管理[^2] Python 虚拟环境配置 1. 原理和配置需求 操作 ...

  9. 一文读懂Python web框架和web服务器之间的关系

    我们都知道 Python 作为一门强大的语言,能够适应快速原型和较大项目的制作,因此被广泛用于 web 应用程序的开发中. 在面试的过程中,大家或多或少都被问到过这样一个问题:一个请求从浏览器发出到数 ...

最新文章

  1. oracle指定用户SID,如何修改oracle SID
  2. python3.7.4安装教程-Python3.7.4图文安装教程
  3. python读取文件读不出来-python文件读取失败怎么处理
  4. matlab slovenia,QUAD-MxFE Platform
  5. asp.net mvc 缓存CaChe使用
  6. 45万例患者基因检测显示:NGS很难检测出七分之一的致病变异
  7. PIL-读取与保存图片
  8. uboot启动文件start.s和main.c解析
  9. 把PDF/AZW/EPUB转成图片
  10. C语言文件操作FILE文件指针fopen文件打开操作
  11. 多线段几何图形—— 简单几何图形(多边形三角形化)
  12. linux默认头文件,Linux安装合适内核头文件的方法
  13. IBM ServeRAID Manager 9.30
  14. 全球区块链理事会(GBBC)成立中国分会,开启新篇章
  15. 干货 | 提升50分,Trip.com 机票基于 PageSpeed 的前端性能优化实践
  16. Win10 x64 中VC6 安装卡死、无法单步调试、调试退出进程没有结束
  17. 飞机的航班代码/航班号码的编号规则
  18. 非财务人员的财务培训教(三)------公司/部门预算编制与评价
  19. 近红外 CMOS 相机
  20. User limit of inotify instances reached or too many open files

热门文章

  1. 关于如何提高代码执行效率。
  2. php 变量传给另外一个函数,将在一个函数中创建的PHP变量传递给另一个
  3. Win7和win10下python3和python2同时安装并解决pip共存问题
  4. Unity 生成APK 出错的解决方法
  5. 单元测试中简单使用Mockito解决Spring Bean依赖树问题
  6. 解决远程桌面关闭后teamviewer不能连接的问题
  7. JavaWeb项目启动时,tomcat会启动两次的原因(之一)和解决方案
  8. @Value取值为NULL的解决方案
  9. VS2012在一个解决方案中添加多个项目(工程)
  10. Android 解决ViewPager双层嵌套的滑动问题