如何使循环重复n次-Python 3

2024-05-07 07:50:59 发布

您现在位置:Python中文网/ 问答频道 /正文

两周前我开始编程,这是我有生以来的第一次,我遇到了一些我无法理解的事情。我试图使它成为一个循环,从一组随机数中计算出一个中值,可以重复多次(比如10000次),同时将所有中值存储到一个列表中。我已经有了所有的东西,直到一个列表是从随机整数(numbList)中创建的,中值(list median)是从这个随机整数(numbList)中计算出来的。我只想能够重复这个过程多次,同时生成所有计算出的媒体的列表。样本量是每个列表中有多少个数字,上限决定了每个数字的范围,谢谢!我正在使用Python 3。

import random


def median(numbList):

    srtd = sorted(numbList)
    mid = len(numbList)//2
    if len(numbList) % 2 == 0:
        return (srtd[mid-1] + srtd[mid]) / 2.0
    else:
        return srtd[mid]


sampleSize = int(input("What is your desired sample size? "))

upperLimit = int(input("What is your desired upper limit? "))

numbList = []

totalMedians = []

biggerList = []


while sampleSize > 0:

    sampleSize -= 1

    randomNum = random.randrange(0,upperLimit+1)

    numbList.append(randomNum)

    numbList.sort(key=int)

    listMedian = median(numbList)

Tags: 列表inputlenreturnis数字整数random
2条回答

说你有这个

print ('hello')

要循环它,您需要在开始时添加:for #1 in range(#2)(#1任意变量,#2它将重复多少次)

例如

for somevariable in range(3)
print('hello')

hello
hello
hello

下面是一个简单的例子:

#!/usr/bin/python

import random

def create_list(sampleSize, upperLimit):
    numbList = []
    while sampleSize > 0:
        sampleSize -= 1
        randomNum = random.randrange(0,upperLimit+1)
        numbList.append(randomNum)
    numbList.sort(key=int)
    return numbList

def median(numList):
    list_len = len(numList)
    if list_len % 2:
        return numList[list_len / 2]
    else:
        return (numList[list_len / 2] + numList[list_len / 2 - 1]) / 2.0

def main():
    number_lists = 4
    sample_size = 5
    upper_limit = 50
    lists = []
    median_list = []

    for i in range(number_lists):
        lists.append(create_list(sample_size, upper_limit))

    for current_list in lists:
        current_median = median(current_list)
        print current_list, " : median (", current_median, ")"
        median_list.append(current_median)

    print "Median list is ", median_list

if __name__ == "__main__":
    main()

哪些输出,例如:

paul@MacBook:~/Documents/src/scratch$ ./sample.py
[3, 18, 20, 26, 46]  : median ( 20 )
[18, 22, 38, 44, 49]  : median ( 38 )
[28, 29, 34, 42, 43]  : median ( 34 )
[4, 21, 27, 31, 46]  : median ( 27 )
Median list is  [20, 38, 34, 27]
paul@MacBook:~/Documents/src/scratch$ 

相关问题 更多 >