确定函数是设置为变量还是简单地在Python中执行



我有一个既打印输出又返回输出的函数,即

def simple_function():
x = "hello world"
print(x)
return x

这个函数是在笔记本电脑中使用的,问题是如果一个函数没有设置为变量,笔记本电脑会打印,然后还会显示返回的对象,所以在视觉上输出看起来是重复的,类似于这样:

simple_function()
"hello world"
Out[93]: "hello world"

在我的实际函数中,输出可以打印数千行,当它被复制时,看起来非常没有吸引力。我想知道的是,我是否可以通过函数本身来确定输出是否被设置为变量,这样我就可以什么都不返回,只打印输出。如果它实现了我的目标,也可以接受其他想法。

我正在使用的笔记本是Azure上的DataBricks笔记本。

只需传递一个变量即可将其设置为,如下所示:

def simple_function(r=false):
x = "hello world"
if r:
return x
else:
print(x)
simple_function() # hello world (printed)
variable = "previous string"
variable=simple_function(true) # hello world (stored)

最新更新