我正在编写代码以从python列表中找到最大和最小编号。如果我在列表中提供数字,则很容易获得输出,但是我想从随机数中获得输出,该怎么做。
我尝试使用max(),但不适用于随机数
import random
list = []
print (len(list))
for i in range(1,10):
print (random.randint(100,200))
for num in list:
list = [random]
print (list)
我也尝试过使用
index = list.index(max(list))
print ('index of max is ', index)
如果我提供数字,这是可行的,但不是随机的。
max和min的输出相同。
答案 0 :(得分:6)
您没有在列表中填写数字,只是在打印它们。您的清单实际上是空的。
尝试一下:
import random
list_ = [random.randint(100,200) for _ in range(10)]
print(list_)
print(max(list_))
P.S。不要将变量命名为与关键字相同的变量,例如list
,dict
等。这是一个很糟糕的主意,可能导致各种错误。
答案 1 :(得分:1)
首先,您需要填充列表,然后找到最小值和最大值:
import random
lst = []
for i in range(1, 10):
lst.append(random.randint(100, 200))
print(max(lst))
print(min(lst))
请注意,如@vurmux的答案所示,使用列表理解更为习惯。
答案 2 :(得分:1)
print(len(list))//它将始终打印0。因为此时list为空。您需要用随机数填充它。
使用Python关键字作为列表,集合,变量等的名称也不是一个好习惯。这可能会引发错误。您已经使用list构造器来创建列表。
这是您需要做的:-
import random
numlist = []
for i in range(1,10):
numlist.append(random.randint(100,200))
print(max(numlist))
print(min(numlist))
在此处阅读有关max的信息:- https://docs.python.org/3/library/functions.html#max