完美处理python与anaconda环境变量的冲突问题

anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。因为包含了大量的科学包,Anaconda 的下载文件比较大(约 515 MB),如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小的发行版(仅包含conda和 Python)。anaconda适合做数据分析,如果使用django、flask、scrapy框架则使用python较为方便,但两个在一起会存在冲突。

出错信息如下:

"Couldn't import Django. Are you sure it's installed and "
ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to acti
vate a virtual environment?

如果大家设置环境变量了,在终端输入Python就会出现anaconda-Python,但无法找回原来的python.(也有可能直接显示python,这是取决于两个版本的环境变量优先级,谁的高就会显示哪一个版本)。

同样如果输入pip list,发现也是这样的问题,它也是取决于Python版本的优先级。

现在我们的需求是,随时调用两个不同版本的python,当然你也可以选择时刻修改系统的环境变量来进行切换,个人感觉比较麻烦。下面是我的解决方案。

1、分别找到原生的Python和anaconda对应的安装目录,并添加拷贝一下其启动文件(exe文件)。

原生python安装目录:C:\ProgramFiles\Python36\python.exe

Anaconda安装目录:D:\Anaconda3\python.exe

2、进行验证,就会发现问题解决了。

(1)输入Python3就会启动原来的Python,但要使用其对应的pip命令就要指定一下Python版本了。

输入Python3 –m pip –-version查看当前Python对应的pip版本;

输入Python3 –m pip list查看当前Python对应的pip安装的第三方库;

输入Python3 –m pip install 库名 即可安装对应的扩展库;

输入Python3 –m pip uninstall 库名 即可卸载对应的扩展库;

(2)输入Python-ana就会启动anaconda,但也要使用其对应的pip命令就要指定一下Python版本了。

输入Python-ana –m pip –-version查看当前Python对应的pip版本;

输入Python-ana –m pip list查看当前Python对应的pip安装的第三方库;

输入Python-ana –m pip install 库名即可安装对应的扩展库;

输入Python-ana –m pip uninstall 库名即可卸载对应的扩展库

3、需要说明一点,如果你经常使用原生的Python,你就可以将其对应的环境变量优先级放在前面,这样,每次使用Python、pip命令就直接调用原生的Python了。同理,anaconda也能这样设置。

话不多说,赶快启动你的Python之旅吧!!!!!!!!!!

以上就是完美处理Python与anaconda环境变量的冲突问题的详细内容,更多关于Python与anaconda环境变量冲突问题的资料请关注我们其它相关文章!

(0)

相关推荐

  • Python基础知识之变量的详解

    一.定义 在python中,变量名只有在第一次出现的时候,才是定义变量.当再次出现时,不是定义变量,而是直接调用之前定义的变量. 二.命名方法 2.1小驼峰命名法 第一个单词以小写字母开始,后续单词的首字母大写 firstName , lastName 2.2大驼峰命名法 每一个单词的首字母都采用大写字母 FirstName , LastName 2.3下划线命名法 每个单词之间用下划线连接起来 first_name , last_name 三.命名规则 3.1标识符 开发人员自定义的一些符号和

  • python安装及变量名介绍详解

    python基础部分学习 一,python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,Guido开始写能够解释Python语言语法的解释器.Python这个名字,来自Guido所挚爱的电视剧Monty Python's Flying Circus.他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言. Python可以应用于众多领域,如:数据分析.组件集成.网络服务.图像处理

  • 在python代码中加入环境变量的语句操作

    以GraphViz为例: 下载安装好的路径名字为C:/Program Files (x86)/Graphviz2.38 import os os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/' #注意修改你的路径 os.environ['path']返回的是所有环境变量的所在的位置,我们这里是为了添加,所以再重新造一个. os.pathsep返回的是分隔符";" 补

  • Python如何批量生成和调用变量

    这几天写代码中遇到的一个常见问题,在Python中如何批量的生成一些变量,如生成变量X1, X2, X3,并在后续的方法中调用,完成赋值.取值等操作.这个问题也算是常见的吧,之前遇到过,也不了了之了.而这次遇到了同样的问题,虽然是创建三个变量数量较少,但从代码维护和易读性的角度考虑,需要使用一些恰当的手段,来避免重复写三次同样代码带来的弊端.一百次,一万次?总不能复制这么多次吧.(为何不复制?详情参考软件工程中的软件维护). 因此有必要养成良好的习惯,而不是复制三次同样的代码. 使用Locals

  • python3 删除所有自定义变量的操作

    其实方法很简单~ 输入 reset, 选y. 删除不可恢复. 补充:Python中的del语句--变量删除 Python中的del语句作用是删除变量,而不是删除数据 >>> a = 1 # 变量a赋值 >>> b = a # 将a赋值给b >>> del a # 删除a变量 >>> b # 查看b变量的值 1 >>> a # 查看a变量 Traceback (most recent call last): File

  • python子类如何继承父类的实例变量

    类型1:父类和子类的实例变量均不需要传递 class A(object): def __init__(self): self.name = "cui" def get_name(self): return self.name class B(A): def __init__(self): super(B,self).__init__() self.age = 12 b = B() 类型2:父类的实例变量不需要传递,子类的实例变量需要传递 class A(object): def __i

  • Python全局变量global关键字详解

    Python中的变量作用域 一般在函数体外定义的变量成为全局变量,在函数内部定义的变量称为局部变量. 全局变量所有作用域都可用,局部变量只能在本函数可用,变量的使用顺序是,局部变量 > 全局变量, 也就是说:优先使用局部变量 那么问题来了, 如果想在函数内使用全局变量,或改变全局变量的值, 应该怎么做呢? Python全局变量global关键字 为了解决函数内使用全局变量的问题,python增加了global关键字, 利用它的特性, 可以指定变量的作用域. Python全局变量global关键字

  • 详解python的变量缓存机制

    变量的缓存机制 变量的缓存机制(以下内容仅对python3.6.x版本负责) 机制 只要有两个值相同,就只开辟一个空间 为什么要有这样的机制 在计算机的硬件当中,内存是最重要的配置之一,直接关系到程序的运行速度和流畅度.在过去计算机内存资源昂贵而小的年代中,程序的内存管理成为编程中的重要技术之一.python没有C/C++中的指针那样的定义可以编程者自主的控制内存的分配,而是有一套自动的内存地址分配和缓存机制.在这个机制当中,可以把一些相同值的变量在内存中指向同一块区域,而不再重新开辟一个空间,

  • python“静态”变量、实例变量与本地变量的声明示例

    前言 虽然各种编程语言之间大部分语法存在共通的地方,但是在一些细节的处理上还是千差万别 才接触Python不久(之前是学Java的),实在想吐槽一下语言之间编码格式上的不统一问题,比如Java用分号分隔代码块,Python用空格,这无形之中增加了编码人员的学习成本 作为初学人员,还是老老实实记录一下学习过程中的坑:) 1. "静态"变量的声明 这里的静态变量是借用Java中静态变量的概念(不知道Python中的具体概念是什么),指既可以通过类名直接进行访问,也可以通过类的实例进行访问的

  • Python判断变量是否是None写法代码实例

    代码中经常会有变量是否为None的判断,有三种主要的写法: 第一种是`if x is None`: 第二种是 `if not x:`: 第三种是`if not x is None`(这句这样理解更清晰`if not (x is None)`) . 如果你觉得这样写没啥区别,那么你可就要小心了,这里面有一个坑.先来看一下代码: >>> x = 1 >>> not x False >>> x = [1] >>> not x False &

  • Python中全局变量和局部变量的理解与区别

    前言 学过编程的人应该对全局变量与局部变量这两个名词并不陌生,Python也同多数编程语言一样,也有全局变量与局部变量的概念 但是与其他编程语言又有所不同 全局变量与局部变量两者的本质区别就是在于作用域 用通俗的话来理解的话, 全局变量是在整个py文件中声明,全局范围内都可以访问 局部变量是在某个函数中声明的,只能在该函数中调用它,如果试图在超出范围的地方调用,程序就爆掉了 如果在函数内部定义与某个全局变量一样名称的局部变量,就可能会导致意外的效果,可能不是你期望的.因此不建议这样使用,这样会使

  • 浅谈对Python变量的一些认识理解

    一.Python变量 在大多数语言中,为一个值起一个名字时,把这种行为称为"给变量赋值"或"把值存储在变量中".不过,Python与许多其它计算机语言的有所不同,它并不是把值存储在变量中,而像是把名字"贴"在值的上边(专业一点说法是将名字绑定了对象).所以,有些Python程序员会说Python没有变量,只有名字,通过名字找到它代表的值. Python中的变量,与其它开发语言(如C语言)的不同: 在C语言中,变量类似于一个"容器&quo

  • python小技巧——将变量保存在本地及读取

    在用jupyter notebook写python代码的过程中会产生很多变量,而关闭后或者restart jupyter kernel后所有变量均会消失,想要查看变量就必须将代码重新再运行一遍,而想在另一个jupyter notebook中调用变量就更加麻烦.在运行时间很长的代码中将变量保存下来能够节省很多事. 那就开始吧! 我用到的包是pickle 1.在使用之前首先需要导入包: import pickle 2.导入包后即可开始实质性操作,我们定义保存变量和读取变量的函数. 保存变量函数: d

随机推荐