Python 返回前打印值
我有一个python函数Python 返回前打印值,python,python-2.7,syntax,Python,Python 2.7,Syntax,我有一个python函数 def foo(): ''' some code ''' return handle.fetch_some_result() 我想实现这个目标: def foo(): ''' some code ''' value = handle.fetch_some_result() print value return value 因此,我如何实现这一点,但不使用上述代码(有点难看)是否有
def foo():
'''
some code
'''
return handle.fetch_some_result()
我想实现这个目标:
def foo():
'''
some code
'''
value = handle.fetch_some_result()
print value
return value
因此,我如何实现这一点,但不使用上述代码(有点难看)是否有一些优雅的方法可以做到这一点,但不使用中间变量(
value
),或者在python中是否可以
谢谢 您可以轻松编写一个帮助器函数来实现这一点,我不知道任何内置函数:
def print_return(value):
print value
return value
你做这件事的方式没有问题。如果您不喜欢函数中的打印,您可以一直打印返回值
def foo():
'''
some code
'''
return handle.fetch_some_result()
result = foo()
print result
你的实际问题是什么?是否要打印并返回值?然后你只有很少的选择,只能再次调用这个方法或者使用一个局部变量。它并不丑陋(如果丑陋被定义为非语言化,如果它被定义为遵循pep8和Python的禅宗)。除了使用变量或调用该方法两次之外,我知道没有其他方法。在这两种方式之间,我个人更喜欢你已经在做的事情。