问答

如何优雅的解决python版本共存问题和对于anaconda的一些疑问

作者:admin 2021-08-20 我要评论

系统环境 Win10 问题的引出 对于原生node模块的编译需要依赖 python2 的环境,默认下载自动安装了本地python环境变成了 python2 ,但是实际存在基于python3的开...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

系统环境

  • Win10

问题的引出

对于原生node模块的编译需要依赖python2的环境,默认下载自动安装了本地python环境变成了python2,但是实际存在基于python3的开发需求,并且版本环境的切换需求就跟node版本的管理一样需要。

尝试解决

看过很多的解决方案,干掉了本地python3的环境,并且把python开发环境的搭建换成了anaconda(默认的python2仍然存在),但是使用anaconda创建的虚拟环境难道只能在命令行内使用吗?不能真的切换本地的python版本?使用pycharm可以解决基于特定虚拟环境的python编程,但是如果默认使用python作为shell来执行py文件,这个问题仍然还是存在的。

对anaconda的疑问

在anaconda的文档阅读和使用过程中,感觉是作为了虚拟环境的包管理工具,而没有真的改变本地真实环境的python版本,跟nvm直接切换node本地的版本本质来说是不一样的,不知这样理解是否正确?

###
  • 安装virtualenvwrapper

windows上建议安装virtualenvwrapper-win,直接pip install virtualenvwrapper-win即可;默认创建的虚拟环境位于C:\Users\username\envs,可以通过环境变量?WORKON_HOME?来定制。

  • 新建虚拟环境
    mkvirtualenv venv
  • 指定python版本
    mkvirtualenv --python=C:\Python\Python37\python.exe venv
  • 删除虚拟环境
    rmvitualenv venv
  • 列出所有虚拟环境
    lsvirtualenv
    workon
  • 激活虚拟环境
    workon venv
  • 退出虚拟环境
    deactivate

可以参考

  1. https://blog.csdn.net/kan2016...
  2. https://www.cnblogs.com/pytho...
###

楼上正解,python 多个版本共存,目前试过的最好方法还是使用虚拟环境,windows 下没怎么测试过,但 linux,确实可以做到完全脱离,安装的包也都可以分开,这个包确实是神器。

###

我借鉴了npm的环境切换工具nvm,通过修改软连接的方式切换实际的本地python环境。主要是node-gyp会检测本地的python实环境,这个通过虚拟环境好像是解决不了的。然后我自己用go写了一个并不完整的工具pyvm,以后有需求再继续写下去。

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 使用箭头函数return数据不能实现

    使用箭头函数return数据不能实现

  • 个人小程序号能接入小程序3D地图吗?

    个人小程序号能接入小程序3D地图吗?

  • vue 移动端项目中,使用了better-scrol

    vue 移动端项目中,使用了better-scrol

  • css如何做出区域平均划分为四列

    css如何做出区域平均划分为四列

腾讯云代理商
海外云服务器