Управление пустым списком / недопустимым вводом при поиске максимального / минимального значения списка (Python)

Я нахожу максимальное значение и минимальное значение списка, используя max(list) и min(list) в Python. Однако мне интересно, как управлять пустыми списками.

Например, если список является пустым списком [] , программа поднимает значение 'ValueError: min() arg is an empty sequence' но я хотел бы знать, как заставить программу просто печатать 'empty list or invalid input' а не просто сбой. Как управлять этими ошибками?

3 Solutions collect form web for “Управление пустым списком / недопустимым вводом при поиске максимального / минимального значения списка (Python)”

Поймать и обработать исключение.

 try: print(min(l), max(l)) except (ValueError, TypeError): print('empty list or invalid input') 

ValueError создается с пустой последовательностью. TypeError возникает, когда последовательность содержит неупорядоченные типы.

В Python 3.4 к функциям min и max добавлен аргумент ключевого слова по default . Это позволяет вернуть значение вашего выбора, если функции используются в пустом списке (или другом итерируемом объекте). Например:

 >>> min([], default='no elements') 'no elements' >>> max((), default=999) 999 >>> max([1, 7, 3], default=999) # 999 is not returned unless iterable is empty 7 

Если ключевое слово по default не задано, вместо него возникает ValueError .

Указание значения по умолчанию в более ранних версиях Python:

 max(list or [0]) max(list or ['empty list']) 
  • Как найти значения min / max из строк и столбцов в Python?
  • Максимальное и минимальное значение Python
  • Сравнение кадра данных о длинах строк для разных столбцов
  • Python min / max на None type
  • Как найти минимальные строки максимальной длины, сгенерированные с учетом регулярного выражения?
  • Самый быстрый способ обнулить низкие значения в массиве?
  • Есть ли способ сделать numpy.argmin () так же быстро, как min ()?
  • Получить имя поля минимального значения, используя агрегацию в django
  •  
    Interesting Posts for Van-Lav

    Как ограничить мой скрипт python только принятием одного аргумента? (argparse)

    Попытка получить кодировку с веб-страницы Python и BeautifulSoup

    Python – как найти файлы и пропустить каталоги в os.listdir

    Должен ли класс преобразовывать типы параметров во время инициализации? Если да, то как?

    Мне нужно точно знать, как использовать string.maketrans

    Извлечь изображение JPEG из перенаправленного URL и отобразить его в окне графического интерфейса пользователя

    Вы можете добавить источник света в блендер, используя python

    Базовое преобразование в python с заданной строкой

    Как я могу лениво читать несколько объектов JSON из файла / потока в Python?

    Учебник модуля Python

    Подсчет количества True Boolean в списке Python

    Объединить много строк json с входами pandon pandas

    Имена файлов Unicode в Windows с Python & subprocess.Popen ()

    Не удалось запустить пример внедрения слов в учебнике tenorflow с помощью графических процессоров

    Лучший способ запуска кода Julia в ноутбуке IPython (или код Python в ноутбуке IJulia)

    Python - лучший язык программирования в мире.