最近我正在考虑主要使用 python 3,尽管到目前为止我已经使用了 python 2.7。
但是我在python 3上遇到了变量问题,如下。
例如,下面的代码可以在 python 2 中正常运行。
#print a
a=1
我在spyder 3.3.6中的ipython控制台(python 2.7.16)上多次运行名为test.py
的代码。
第一次运行后,我删除了第一行中的 #
。
然后,ipython 控制台输出 1
,这是 a
的值。
但是,当我在spyder 4.0.1中的ipython控制台(python 3.7.6)上运行与上面类似的上面的代码(第一行被#print(a)
替换)时, ipython 控制台输出错误消息,
NameError:名称“a”未定义
。
当我在 ipython 控制台中输入 a
时,控制台输出 1
。
我可以在 python 3 环境中执行与 python 2 中相同的操作吗?
提前谢谢您。
最佳答案
运行脚本时有一个设置,名为“在控制台的命名空间而不是空命名空间中运行”。 如果您勾选该框,它会将变量保留在命名空间中。
关于python-3.x - 在spyder中python 3的ipython控制台上出现变量问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63360504/