Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在spyder中使用系统环境变量_Python_Anaconda_Environment Variables_Spyder - Fatal编程技术网

Python 在spyder中使用系统环境变量

Python 在spyder中使用系统环境变量,python,anaconda,environment-variables,spyder,Python,Anaconda,Environment Variables,Spyder,我有一个用Python 2编写的程序需要运行,我想通过anaconda软件在spyder中运行它。 问题是,要通过终端运行程序,我必须在之前的系统环境变量中添加两个新变量: 1) 计算机中的一个文件夹,其中包含一些必需的包 2) 具有所需许可证的ip地址的变量 虽然我定义了这些变量,并且程序在终端中运行时没有问题。当我在spyder中运行它时,出现了一个错误,因为它没有使用这些变量 我怎样才能解决这个问题?关于anaconda创建的虚拟环境并没有加载这些变量,但我无法理解其他任何内容。例如,如果

我有一个用Python 2编写的程序需要运行,我想通过anaconda软件在spyder中运行它。 问题是,要通过终端运行程序,我必须在之前的系统环境变量中添加两个新变量: 1) 计算机中的一个文件夹,其中包含一些必需的包 2) 具有所需许可证的ip地址的变量

虽然我定义了这些变量,并且程序在终端中运行时没有问题。当我在spyder中运行它时,出现了一个错误,因为它没有使用这些变量

我怎样才能解决这个问题?关于anaconda创建的虚拟环境并没有加载这些变量,但我无法理解其他任何内容。例如,如果我在anaconda之外使用pycharm,它也可以完美地工作

谢谢大家!!
Emanuel

工具菜单中有一个选项,让您可以在Spyder中检查/插入/更新/删除当前活动的环境变量(图中供参考)

编辑:关于您的PS问题,当您(通过pip?)安装软件包时,您是通过当前活动的Python安装来完成的,您可以通过运行

python -V

因此,如果您打算在多个安装中安装一个软件包,则需要使用相应的软件包管理器可执行文件。

我相信Anaconda提供了有关设置环境变量的说明,但这种方法似乎很复杂

设置环境变量似乎不再是Spyder中的选项

作为一种解决方法,Spyder允许您指定启动文件:
首选项
->
IPython控制台
->
启动

在启动文件中,您只需运行以下操作:

import os
os.environ['my_var'] = 'my_value'
os.environ['test'] = 'test_value'

每次启动新的ipython控制台时,此代码都会运行。

我不明白您在问什么。我只能说变量与anaconda环境无关如果要在spyder中运行脚本,最简单的方法就是将文件路径声明为实际变量而不是环境变量,因此spyder不会加载系统变量,它们必须在脚本开始时导入,对吗?我不相信spyder关心外部定义的环境变量。由于IPython和控制台与脚本之间的全局名称空间,它构建自己环境的方式相当复杂。再读几遍你的问题,我想我明白你的意思了。我的猜测是,这是愚蠢的,或者至少是容易出现错误的,但事实就是这样;猜测。我将不得不让其他人来回答我的建议是删除最后的第二个问题,顺便说一句。你的帖子最好集中在一个问题上。我已经在那里添加了所需的变量,但不幸的是,问题仍然存在。让我进一步看看,顺便说一句,你使用的是IPython控制台吗,或者运行脚本?您的环境变量是在系统级还是在用户级设置的?因为我刚刚做了一些测试,Spyder只识别用户级别的环境变量。我现在尝试将它们定义为用户变量,但仍然没有导入。我确实运行,但它总是打开IPython控制台。我想我会使用VSCode或pycharm。我只是对spyder感兴趣,因为它的GUI与MATLAB非常相似,我觉得与MATLAB更为兼容。