max () не возвращает наибольшее число - PullRequest
0 голосов
/ 26 октября 2018

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

def largest_odd():
    userInput = input(' enter 10 integers separated by a space').split(' ')
    oddList = []

    for x in userInput:
        if int(x) % 2 > 0:
            oddList.append(x)
            print(x, ' is odd')
        else:
            print(x, ' is not odd')
    return max(oddList) 

largest_odd()

Теперь, если я введу '1 2 3 4 5 6 7 8 9', он вернет 9 как самое высокое.

Если я введу '1 2 3 4 5 20175'

Возвращается 5 как самое высокое.

1 Ответ

0 голосов
/ 26 октября 2018

Вот ваш исправленный код:

def largest_odd():
    userInput = input(' enter 10 integers separated by a space').split(' ')
    oddList = []

    for x in userInput:
        if int(x) % 2 > 0:
            oddList.append(int(x))
            print(x, ' is odd')
        else:
            print(x, ' is not odd')

    return max(oddList)

print(largest_odd())
...