在我的first CodeReview Q之后,我得到了提示:
Your code appears to be for Python 2.x. To be a bit more ready for a possible future migration to Python 3.x, I recommend to start writing your print ... statements as print(...)
因此,在下面的代码中(我在使用Python 2.6和2.7),我总是用()
表示print
:
print('Hello')
今天我第一次用PyLint测试我的代码,它说:
C: 43, 0: Unnecessary parens after 'print' keyword (superfluous-parens)
这解释了here。
那么print(str)
是否真的不正确,或者我可以忽略这个PyLint消息?
为了让pylint知道您想要使用新的print语句,而不是放错误的括号,只需使用
在你剧本的开头。这还有一个优点,即您总是需要使用
print(...)
,而不是print ...
。因此,您的程序将抛出一个SyntaxError
,以防您回到原来的语法。请注意,这在Python2.5或更高版本中不起作用。但是既然你使用2.6和2.7,就应该没有问题了。
在Python 3中,print是一个函数,它需要使用()。 在Python 2中不是这样,所以父对象是不必要的。
如果您将来要将代码迁移到Python 3,那么最好保持放置()的习惯。
https://docs.python.org/3.0/whatsnew/3.0.html#print-is-a-functionhttps://www.python.org/dev/peps/pep-3105/
你可能正在使用Python2 pylint,这就是它抛出这个警告的原因,没什么好担心的。
相关问题 更多 >
编程相关推荐