我是一个新手python学习者,虽然我知道打印包含字符串和变量的文本,但我想问一个关于此的基本问题。这是我的代码:
x=5
print ("the value of x is ",x)
print "the value of x is",x
第一个打印命令打印('the value of x is ', 5)
,而第二个打印命令打印the value of x is 5
。但是print ('hello')
& print 'hello'
打印hello
(相同),为什么?
答案 0 :(得分:2)
因为('hello')
只是'hello'
,而不是1元组。
答案 1 :(得分:1)
Print是py2x中的语句而不是函数。所以打印("the value of x is ",x)
实际打印一个元组:
>>> type(('hello'))
<type 'str'>
>>> type(('hello',)) # notice the trailing `,`
<type 'tuple'>
在py2x中,只需删除()
即可获得正确的输出:
>>> print "the value of x is","foo"
the value of x is foo
或者您也可以导入py3x的打印功能:
>>> from __future__ import print_function
>>> print ("the value of x is","foo")
the value of x is foo
答案 2 :(得分:0)
假设Python 2.x,print
是一个语句,逗号使表达式为元组,用括号打印。假设Python 3.x,print
是一个函数,因此第一个正常打印,第二个是语法错误。