我使用python 2.7和python 3的语法编写了一个简单的 hello.py 代码。2.7 env仅使用python 3的语法执行代码,并在代码行以2.7语法编写。
为什么? 这是否意味着我根本无法在此env中使用2.7语法? 我该如何解决?
我用python 3(基础版)安装了Anaconda。
我在ANACONDA提示中尝试过:
我打开了Anaconda Prompt,成功安装了另一个环境,
conda create --name py27 python=2.7
然后使用
激活它conda activate py27
得到预期的结果
>>>(py27) C:\Users\...
命令
python -V
也按预期返回
>>>Python 2.7.15 :: Anaconda, Inc.
我的hello.py包含这两行代码
print 'hello 2.7' #This is python 2.7 syntax
print ('hello 3') #This is python 3 syntax
我在ANACONDA SPYDER中尝试过:
我在Anaconda Spyder的base(root)和py27上运行了hello.py。
ANACONDA提示的结果:
我期望第2行出现以python 3语法编写的打印命令错误。相反:在Anaconda Prompt中执行该命令时,我会收到错误消息
print 'hello 2.7'
^
SyntaxError: invalid syntax
ANACONDA SPYDER的结果:
py27上的spyder正确打印了两行,即使我希望有一条正确的行和一条错误。
基于(root)的Spyder给了我一个预期的语法错误。