def function_1():
return (5)
return (6)
return(7)
result_1 = function_1()
print(result_1)
为什么当我打印function_1()的调用时,仅打印第一个值5?
答案 0 :(得分:0)
您需要将多个值作为元组返回。
def function_1():
return 5, 6, 7
result_1 = function_1()
print(result_1)
a, b, c = function_1()
print(a, b, c)
这将输出:
(5, 6, 7)
5 6 7
答案 1 :(得分:0)
当您通过此return (5)
行返回值5时,funtion_1
返回值并终止该函数。这就是为什么后续行没有得到执行的原因。如果要从一个函数返回多个值,则可以将它们返回为tuple
,list
等。例如:
def function_1():
return(5,6,7)
答案 2 :(得分:0)
为什么是当我打印function_1()的调用时,只有第一个 值5是否被打印?
正在打印值“ 5”,因为当您调用function_1
时,function_1
将始终返回“ 5”,并且不会在该函数中执行下一行。这就是您始终获得相同价值的原因。
答案 3 :(得分:0)
您可以改用yield
生成一个生成器。 return
停止函数执行。代码如下:
def function_1():
yield (5)
yield (6)
yield (7)
for result in function_1():
print(result)
答案 4 :(得分:0)
您的函数将在第一个成功的return
语句(在本例中为5
)上终止。正如其他人所建议的那样,您可以将这些值包装在tuple
或list
中。您还可以返回包含以下多个值的字典:
def function_1():
return {'first': 5, 'second': 6, 'third': 7}
然后您可以这样称呼它:
>>> result_1 = function_1()
>>> result_1
{'first': 5, 'second': 6, 'third': 7}
>>> result_1['first']
5
>>> result_1['second']
6
>>> result_1['third']
7