Python 3.x 为什么在使用打印功能时,Canopy Python3 IDE会在文本周围返回引号?
我试着简单地在树冠上打印文本,下面是正在发生的事情 输入:Python 3.x 为什么在使用打印功能时,Canopy Python3 IDE会在文本周围返回引号?,python-3.x,printing,enthought,canopy,Python 3.x,Printing,Enthought,Canopy,我试着简单地在树冠上打印文本,下面是正在发生的事情 输入: k = 3 Print ('Candidate =',k) 输出: ('Candidate =', 3) 为什么输出中有括号和引号?我只想打印:Candidate=3在Python 2中,print是一个语句。作为一条语句,括号不是其语法的一部分(就像return)。因此,当Python看到print(a,b)时,它将分别解析(a,b)部分。对于解析器,这是一个元组: value = ('Candidate =', k) print
k = 3
Print ('Candidate =',k)
输出:
('Candidate =', 3)
为什么输出中有括号和引号?我只想打印:
Candidate=3
在Python 2中,print
是一个语句。作为一条语句,括号不是其语法的一部分(就像return
)。因此,当Python看到print(a,b)
时,它将分别解析(a,b)
部分。对于解析器,这是一个元组:
value = ('Candidate =', k)
print value
打印元组时,它将打印括号,并在括号内打印所有值及其repr
值的列表。并且字符串的repr值被引为:
>>> print repr('Candidate =')
'Candidate ='
因此,要获得所需的结果,需要将'Candidate='
和k
传递给print语句,而无需将其放入元组。因此,您只需删除括号:
>>> print 'Candidate =', k
Candidate = 3
请注意,在Python3中,print
变成了一个函数,因此它实际上需要括号,并且您的原始代码可以按照您的需要工作。如果希望在Python 2中使用print函数(而不是将print作为语句),可以在代码顶部添加以下内容:
from __future__ import print_function
Canopy似乎有自己的Python2环境,所以它不使用您安装的任何东西。根据,在Canopy.com中似乎不支持Python 3。Canopy是一个完整的Python2.7科学发行版,其中包含一个IDE。无论是Python2.x还是3.x,它都不是可安装到现有Python发行版中的IDE。为什么您不接受我的答案?我希望我可以删除我的noob问题。