為什么line7 報錯 float division by zero?
def average(*args):
??? sum = 0.
??? n = 0
??? if args == 0:
??????? return sum
??? for num in args:
??????? sum += num
??????? n += 1
??? return sum/n
print average()
print average(1, 2)
print average(1, 2, 2, 3, 4)
2019-09-20
args是個tuple,應該判斷len(args)==0,args==0是個啥
2019-09-17
def average(*args):
? ? if len(args) > 0:
? ? ? ? return sum(args) * 1.0 / len(args)
? ? else:
? ? ? ? return 0.0
除數不能為0, 參數為空的情況 除數 n 為 0
2019-09-17
def average(*args):
??? sum = 0.
??? n = 0
??? if len(args) == 0:
??????? return sum
??? for num in args:
??????? sum += num
??????? n += 1
??? return sum/n
print average() ?
print average(1, 2)
print average(1, 2, 2, 3, 4)
可變參數 args 是一個tuple,當0個參數傳入時,args是一個空tuple。
所以print average()? 時會報錯