為什么在加這個(gè)對(duì)于無(wú)參數(shù)輸入的條件不添加返回,而改變成打印會(huì)報(bào)錯(cuò)呢?
def average(*args):
? ? sum = 0
? ? if len(args) == 0:
? ? ? ? print('Error')
? ? for i in args:
? ? ? ? sum += i
? ? avg = sum / len(args)
? ? return avg
print average()
def average(*args):
? ? sum = 0
? ? if len(args) == 0:
? ? ? ? print('Error')
? ? for i in args:
? ? ? ? sum += i
? ? avg = sum / len(args)
? ? return avg
print average()
2021-08-15
舉報(bào)
2021-08-21
很簡(jiǎn)單啊,只打印不返回,那就會(huì)繼續(xù)執(zhí)行下去。那到了用len(args)時(shí)len(args)=0為除數(shù)就報(bào)錯(cuò)了。我記得前面的章節(jié)9-2有講:return表示返回的意思,函數(shù)體內(nèi)部的語(yǔ)句在執(zhí)行時(shí),一旦執(zhí)行到return時(shí),函數(shù)就執(zhí)行完畢,并將結(jié)果返回。
所以懂了么
2021-08-16