哪里出了問題
撰寫函式:隨機產生包含n個整數的串列,回傳一個元組,其中第一個元素為所有引數的平均值,其他元素為所有引數中大于平均值的整數。
import random
def func(n):
list_a = [random.randint(0,100) for i in range(n)]
print(list_a)
s=0
for i in list_a:
s=s+i
averge=s/n
b=tuple(averge,)
c=[]
for i in list_a:
if i>averge:
c.append(i)
d=tuple(c)
m=b+d
return m
n=int(input("請輸入一個整數:"))
func(n)
print(func(n))
Traceback (most recent call last):
File "C:/python實驗/1.3.4.py", line 19, in <module>
func(n)
File "C:/python實驗/1.3.4.py", line 9, in func
b=tuple(averge,)
TypeError: 'float' object is not iterable
uj5u.com熱心網友回復:
import random
def func(n):
list_a = random.sample(range(101), n)
avg = sum(list_a) / n
return (avg,) + tuple(i for i in list_a if i > avg)
rec = func(10)
print(rec)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/192941.html
上一篇:求助
下一篇:import匯入包運行報錯。
