如何在Python 2.7中返回打印功能?在Python 3中,您可以键入return print(True)
,但在Python 2.7中,当我尝试return print True
时,语法错误无效。我是Python的新手。
答案 0 :(得分:8)
在Python 2.x中print
不是函数,而是关键字。
可能的最佳解决方案是导入3.x-like print behvaiour,如下所示:
from __future__ import print_function
p = print # now you can store the function reference to a variable
p('I am a function now!')
>>> I am a function now!
def get_print():
return print # or return it :)
get_print()
>>> <function print>
答案 1 :(得分:2)
使用Python 2.7是不可能的,因为print不是一个函数,它是一个保留字*。您可以轻松地为它创建一个函数:
def printf(x):
print x
然后你可以做你想做的事:
return (printf(True))
但你必须重命名。
*这是在python 3上更优雅地解决的问题之一。
答案 2 :(得分:0)
print
,作为Python 2中的语句而不是函数,不能以这种方式使用。相反,你需要这样做:
from __future__ import print_function
def foo():
return print(True)
foo()