2010-06-22 3 views
54

Есть ли простой способ или функция для определения наибольшего числа в списке python? Я мог бы просто закодировать его, поскольку у меня есть только три числа, однако это сделает код намного менее избыточным, если я могу сказать, что с помощью встроенной функции или чего-то еще.Python - найти наибольшее число в списке чисел

ответ

90

насчет макс()

highest = max(1, 2, 3) # or max([1, 2, 3]) for lists 
+2

Спасибо, это было именно то, что мне нужно: D –

+0

Awesome, весело питон-ки :-) – Jubal

+1

он попросил * набор * – rbp

6

Использование max()

>>> l = [1, 2, 5] 
>>> max(l) 
5 
>>> 
10

Вы можете использовать встроенную функцию max() с несколькими аргументами:

print max(1, 2, 3) 

или список:

list = [1, 2, 3] 
print max(list) 

или на самом деле ничего итерационного.

-4
#Ask for number input 
first = int(raw_input('Please type a number: ')) 
second = int(raw_input('Please type a number: ')) 
third = int(raw_input('Please type a number: ')) 
fourth = int(raw_input('Please type a number: ')) 
fifth = int(raw_input('Please type a number: ')) 
sixth = int(raw_input('Please type a number: ')) 
seventh = int(raw_input('Please type a number: ')) 
eighth = int(raw_input('Please type a number: ')) 
ninth = int(raw_input('Please type a number: ')) 
tenth = int(raw_input('Please type a number: ')) 

    #create a list for variables 
sorted_list = [first, second, third, fourth, fifth, sixth, seventh, 
       eighth, ninth, tenth] 
odd_numbers = [] 

    #filter list and add odd numbers to new list 
for value in sorted_list: 
    if value%2 != 0: 
     odd_numbers.append(value) 
print 'The greatest odd number you typed was:', max(odd_numbers) 
+2

1) нет причин не делать my_list = sorted ([int (raw_input ('Пожалуйста, введите число')) для _ в xrange (10)) по сравнению с набором дополнительных материалов. 2) у вас есть список под названием sorted_list, но на самом деле вы его не сортируете. 3) В вопросе о том, чтобы отфильтровать нечетные числа, ничего не спрашивается. 4) Что это означает, что предыдущие ответы 5 лет назад не были (помимо ответа на вопрос, который не был задан, и менее элегантным способом) – Foon

3

Если у вас есть, чтобы найти его, не используя максимальную функцию, то вы можете следовать код ниже:

a=[1,2,3,4,6,7,99,88,999] 
    max= 0 
    for i in a: 
     if i > max: 
      max=i 
    print(max) 
+0

Зачем вам никогда не удавалось использовать функцию max? –

+0

Итак, я написал это для тех людей, которые готовятся к собеседованию, где вопрос заключается в том, чтобы найти максимум списка без использования максимальной функции. Если вы чувствуете, что это хорошо для интервью, пожалуйста, воздержитесь –

0

max является встроенной функцией в Python, который используется, чтобы получить максимальное значение из последовательности , то есть (список, кортеж, множество, и т.д ..)

print(max([9, 7, 12, 5])) 

# prints 12