我正在尝试创建4个独立的函数,它们在输出文件中创建一个包含10000个函数的随机列表,然后找出从1到100范围内所有数字的平均值,然后找出有多少数字在平均值的10以上和10以下。这是我一直在做的事情的一个非常粗略的基础,但我不知道从哪里开始
def main():
import random
list=[]
outfile = open("pa8_numbers.py","w") # open a file to WRITE to it
for i in range(10000):
data = random.randint(1,100)
list.append(data)
outfile.write(str(data)+"\n") # write the random number as a string
outfile.close()
print(above(list))
def numbers(data):
list=[]
for i in range(10000):
data=random.randint(1,100)
list.append(data)
return list
def average(list):
avg=sum(list)/len(list)
return avg
def above(list):
total=0
average=sum(list)/len(list)
averager=average+10
for i in list:
if average <=i and average >= i:
total=total+i
above.append(data[i])
return above[i]
else:
break
def below(data):
average=sum(list)/len(list)
averager=average-10
for i in range(len(list)):
if average >= i and averager <= i:
return below
else:
break
def final(self):
print(above(list))
print(average(list))
print(below(list))
main()发布于 2018-11-29 15:24:49
我猜你需要下面的解决方案:
import random
aa = []
for i in range(10000):
aa.append(random.randint(1,100))
avg = (sum(aa)/len(aa))
abv, blv = avg +10, avg-10
final_list = [1 if i>= abv else 2 if i<=blv else 0 for i in aa]
print ("numbers above, average+10 = ", abv , " --> ", final_list.count(1))
print ("numbers below, average-10 = ", blv , " --> ", final_list.count(2))
print ("numbers above, between(+10 and -10) = ''", blv, ":", abv , "' --> ", final_list.count(0))https://stackoverflow.com/questions/53531664
复制相似问题