숫자 목록에서 가장 큰 숫자 찾기


93

파이썬 목록에서 가장 큰 수를 결정하는 쉬운 방법이나 기능이 있습니까? 나는 단지 3 개의 숫자 만 가지고 있기 때문에 그것을 코딩 할 수 있지만, 내장 함수 나 무언가로 가장 큰 것을 말할 수 있다면 코드가 훨씬 덜 중복 될 것입니다.

답변:



18

max()여러 인수와 함께 내장 함수 를 사용할 수 있습니다 .

print max(1, 2, 3)

또는 목록 :

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

또는 실제로 반복 가능한 모든 것.


3
실제 키워드를 덮어 쓰는 기본 내장 파이썬 키워드로 변수 이름을 지정하는 것은 좋지 않습니다. (알아야합니다) :-)
U10-Forward

16

이 접근 방식은 max()기능 을 사용하지 않습니다.

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

또한 결과 최대 값의 인덱스를 찾으려면

print(a.index(max_num))

max () 함수를 사용하여 직접 접근

max () 함수는 이터 러블에서 가장 높은 값을 가진 항목 또는 가장 높은 값을 가진 항목을 반환합니다.

예 : 정수 / 숫자에서 최대 값을 찾아야 할 때

a = (1, 5, 3, 9)
print(max(a))
>> 9

예 : 문자열이있는 경우

x = max("Mike", "John", "Vicky")
print(x)
>> Vicky

기본적으로 알파벳순으로 가장 높은 값을 가진 이름을 반환합니다.


2
왜 max 기능을 사용할 수 없습니까?
Chris Foster

3
나는 질문은 인터뷰의 좋은 upvote에 불쾌하다고 생각 최대 function.If를 사용하지 않고 목록의 최대 값을 찾는 것이다 인터뷰를 준비하는 사람들을 위해 쓴 그래서
Chetan_Vasudevan

2
아마도 최대의 인덱스가 필요하다면? 그런 다음 for 줄에 idx var를 포함합니다.
Kit Plummer

1
max변수의 이름으로 사용하지 마십시오 . 내장의 이름이기 때문입니다.
wjandrea

11

사용하다 max()

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

2

max 는 파이썬의 내장 함수로, 시퀀스에서 최대 값을 얻는 데 사용됩니다 (예 : 목록, 튜플, 세트 등).

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

# prints 12 

2

실제로 정렬 할 수 있습니다.

sorted(l,reverse=True)

l = [1, 2, 3]
sort=sorted(l,reverse=True)
print(sort)

당신은 얻을 :

[3,2,1]

그러나 여전히 최대 값을 얻으려면 다음을 수행하십시오.

print(sort[0])

당신은 얻을 :

3

두 번째 최대 인 경우 :

print(sort[1])

등등...


1
목록을 정렬하는 것은 단지 최대 값 O (n)을 얻는 것보다 (N N 로그)보다 복잡한 작업 O입니다
앨런

-6
    #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)

3
1) xrange (10)에서 _에 대해 my_list = sorted ([int (raw_input ( 'Please type a number')) 대 추가 항목을 입력하지 않을 이유가 없습니다. 2) sorted_list라는 목록이 있지만 실제로 정렬하지는 않습니다. 3) 홀수 만 필터링하는 것에 대해 묻는 질문이 없습니다. 덜 우아한 방식으로 묻지 않은 질문)
Foon
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.