如何在不使用函数" max"的情况下找到列表中的最大数字?

时间:2014-12-12 01:14:24

标签: python list function for-loop max

我是编程的初学者,我正在尝试创建一个生成1000个随机数的程序,然后打印出数字列表中数字的最高值(我知道我的程序只输出10个数字,这是因为我正在尝试调试程序)。我已经有一个程序,但它不起作用。问题是,程序将输出这些看似随机的数字,有时是最大的数字,有时是一个多个数字的列表。非常感谢帮助。

import random
num_list=[]
largest=[]
maximum=-1
while len(num_list)<10:
    numbers=random.randrange(0,11)
    numbers=int(float(numbers))
    num_list.append(numbers)
if len(num_list)==10:
    print num_list
    for num in num_list:
        if num>maximum:
            maximum=num
            largest.append(num)
    print largest 

3 个答案:

答案 0 :(得分:2)

更有效的方法:

numList = []
for i in range(10):
    numList.append(random.randrange(0,11))

maxNum = -1
for i in numList:
    if i > maxNum:
        maxNum = i

print(maxNum)

答案 1 :(得分:1)

这没有任何意义

        maximum=num
        maximum.append(num)

也许你的意思是这个

        maximum=num
        largest.append(num)

答案 2 :(得分:0)

reduce(lambda x, y: x if x > y else y, [random.randrange(0,11) for i in range(10)])