如何从随机数字列表Python中获取最大值

时间:2012-08-31 01:31:44

标签: python

我有这个代码我正在努力工作。我可以创建一组随机数,但我需要显示最大值。我试图不使用python的内置max命令,但是,如果我找不到解决方案,我会问一个例子。

import random
def randomNumbers(number):
    myList = []
    numbersToCreate = number
    while numbersToCreate > 0:
        randomNumber = int(random.random() * 100)
        myList.append(randomNumber)
        numbersToCreate = numbersToCreate -1
    return myList

我试图输入的一段代码是:

theList = []
theList.sort()
biggest = theList [-1:][0]
print (theList)

当我尝试用它运行时,我收到一个错误,告诉我列表没有定义。任何帮助,将不胜感激。

4 个答案:

答案 0 :(得分:1)

theList = randomNumbers(30)
biggest = max(theList)
print (biggest)

答案 1 :(得分:1)

这是一个解决方案。

def randomNumbers(number):
    theList = []        
    numbersToCreate = number
    while numbersToCreate > 0:
        randomNumber = int(random.random() * 100)
        theList.append(randomNumber)
        numbersToCreate -= 1
    return theList

outList = randomNumbers(100)
outList.sort()
print outlist[-1] # No reason to slice the list, which is what you were doing.

答案 2 :(得分:1)

你真的应该使用Python的max()函数,至少为了便于阅读。

如果没有,您可以随时检查Python开发人员如何在Python中实现它,因为它是开源的。

答案 3 :(得分:1)

首先,如果您希望列表中包含int,则可以使用random.randint(min, max)代替int(random.random()*100)。 其次,您需要调用您的函数并将返回列表传递给theList

def randomNumberList(n):
    theList = []
    for i in range(n):
        theList.append(random.randint(0,100))
    return theList

theRealList = randomNumberList(n)

然后您就可以使用实际列表了。

theRealList.sort()
theBiggest = theRealList[-1]