konopka228
@konopka228
Пытаюсь понять программирование

Почему функция max выбирает неправильный максимальный элемент?

Вот часть кода:
sem = input('Введите последовательность чисел с точкой в конце строки: ')
if sem.endswith('.'):
    sem = sem.strip('.')
    sem = sem.split()
    if  ('7' not in sem) and ('8' not in sem) and ('9' not in sem):
        a = max(sem)
        print(a)

Корректно работает только с небольшими числами . Подскажите пожалуйста, как это исправить.
  • Вопрос задан
  • 138 просмотров
Решения вопроса 1
0xD34F
@0xD34F
Всё правильно. Просто у вас не числа, а строки. Надо сделать числа.

Замените

sem.split()

на

list(map(int, sem.split()))

или

[int(n) for n in sem.split()]
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы