嗨,我在python中有这段代码,我想要返回并继续打印,但它只是返回一次并打印一次,这是我尝试过的
def car(distance,speed):
while distance>0:
distance=distance-20
speed=speed-speed*0.05
print('distance=',distance, 'speed is',speed)
# Here's what i tried return but it just print one time
return distance,speed
print(car(220,160))
return 语句将控件移回调用函数。因此,while 被终止。您可以附加结果并在 while 结束后打印
def car(distance,speed):
result = []
while distance>0:
distance=distance-20
speed=speed-speed*0.05
# Here's what i tried return but it just print one time
result.append((distance,speed))
for item in result:
print('distance=',item[0],'speed is', item[1])
return语句用于结束函数调用的执行,并将结果(返回关键字后面的表达式值(返回给调用方。返回语句(在函数中(之后的语句不执行。
因此,在本例中,您将返回第一个值,然后跳出函数。
您的 return 语句缩进了太多级别,因此循环在一次后终止。确保它与 while 对齐。