代碼問題::
def average(*args):
? ? if len(args)==0:
? ? ? ? return 0.0
? ? else:
? ? ? ? return (sum(args)*1.0)/len(args)
print average()
print average(1, 2)
print average(1, 2, 2, 3, 4)
為什么? return (sum(args)*1.0)/len(args)? ? ?sum(args)要乘以1.0
def average(*args):
? ? if len(args)==0:
? ? ? ? return 0.0
? ? else:
? ? ? ? return (sum(args)*1.0)/len(args)
print average()
print average(1, 2)
print average(1, 2, 2, 3, 4)
為什么? return (sum(args)*1.0)/len(args)? ? ?sum(args)要乘以1.0
2019-04-08
舉報
2019-04-08
因為后面要通過sum 來計算平均數average,如果sum是整型的話,做除法運算時只保留整數結果,后面余數會被扔掉,乘以0.1變為浮點數則可以獲得精確的除法運算結果。
2019-04-08
1.0 是浮點型。這樣返回來的平均數就是浮點型