Python 函数 - 打印或 return?
Python functions - print or return?
我认为这可能是所有问题中最愚蠢的问题之一,但我并没有真正理解这些函数,一件事是关于“return”[=14= 的使用]
那么,让我们想象一个简单的例子,我想问候我的函数(通过说“你好函数!”)并为此使用一个函数。
所以我应该像这样在函数中使用打印语句:
def hello_func (greeting):
print (f'{greeting} function!')
greeting = 'Hi'
hello_func(greeting)
或者我应该 return 函数中的值:
def hello_func (greeting):
return (f'{greeting} function!')
greeting = 'Hi'
print (hello_func(greeting))
输出是相同的(嗨,功能!)...所以在这种特殊情况下,我使用什么并不重要,或者是否有“更好”的代码?
谢谢。
返回会是更好的做法。
return根据您对此问候语功能的选择进行打印或打印。
有时需要在其他地方使用函数return值;在那一刻,有必要使用 return 声明,您可以在其他地方使用该函数 return 值。
在功能上,最大的区别是在你的第二个例子中,你可以将返回值保存到一个变量中。然后你可以随心所欲地操作它:
def hello_func (greeting):
return (f'{greeting} function!')
greeting = 'Hi'
result = hello_func(greeting) # Function is only called once
print(result) # Displays the result
print(result + "!!!") # Does stuff with result
print(result + "?????") # Does even more stuff with result
print(result == 'Hello') # Compares the result to something
newest_result = result + "foo bar" # Creates a new variable based on result
print(newest_result) # Displays the new variable
这意味着您只需要执行一次hello_func
,然后将其结果保存到一个变量中,然后由您的程序进一步处理。如果 hello_func
是一个需要花费大量时间执行的昂贵函数,这就变得更加重要。
决定采用第一种还是第二种方法时要问的关键问题是:您只想在屏幕上显示结果,还是想将结果保存到内存中,稍后在您的程序中使用它?
总的来说,这取决于你想做什么。
例如,如果您正在打印错误,请打印它。
或者,如果您正在处理字符串,则 return.
无论如何,要牢记目的。
我认为这可能是所有问题中最愚蠢的问题之一,但我并没有真正理解这些函数,一件事是关于“return”[=14= 的使用]
那么,让我们想象一个简单的例子,我想问候我的函数(通过说“你好函数!”)并为此使用一个函数。
所以我应该像这样在函数中使用打印语句:
def hello_func (greeting):
print (f'{greeting} function!')
greeting = 'Hi'
hello_func(greeting)
或者我应该 return 函数中的值:
def hello_func (greeting):
return (f'{greeting} function!')
greeting = 'Hi'
print (hello_func(greeting))
输出是相同的(嗨,功能!)...所以在这种特殊情况下,我使用什么并不重要,或者是否有“更好”的代码?
谢谢。
返回会是更好的做法。
return根据您对此问候语功能的选择进行打印或打印。
有时需要在其他地方使用函数return值;在那一刻,有必要使用 return 声明,您可以在其他地方使用该函数 return 值。
在功能上,最大的区别是在你的第二个例子中,你可以将返回值保存到一个变量中。然后你可以随心所欲地操作它:
def hello_func (greeting):
return (f'{greeting} function!')
greeting = 'Hi'
result = hello_func(greeting) # Function is only called once
print(result) # Displays the result
print(result + "!!!") # Does stuff with result
print(result + "?????") # Does even more stuff with result
print(result == 'Hello') # Compares the result to something
newest_result = result + "foo bar" # Creates a new variable based on result
print(newest_result) # Displays the new variable
这意味着您只需要执行一次hello_func
,然后将其结果保存到一个变量中,然后由您的程序进一步处理。如果 hello_func
是一个需要花费大量时间执行的昂贵函数,这就变得更加重要。
决定采用第一种还是第二种方法时要问的关键问题是:您只想在屏幕上显示结果,还是想将结果保存到内存中,稍后在您的程序中使用它?
总的来说,这取决于你想做什么。
例如,如果您正在打印错误,请打印它。 或者,如果您正在处理字符串,则 return.
无论如何,要牢记目的。