«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как использовать логику if/else в понимании списков Python?

Как использовать логику if/else в понимании списков Python?

Опубликовано 21 декабря 2024 г.
Просматривать:253

How Do I Use if/else Logic within Python List Comprehensions?

Понимание списков с помощью if/else: синтаксис и использование

При работе с генераторами списков в Python встречается включение логики if/else для обработки условных операций. В этой статье рассматривается правильный синтаксис для таких сценариев.

Общая задача — создать список на основе исходной последовательности со следующим циклом for, содержащим конструкцию if/else:

results = []
for x in xs:
    results.append(f(x) if x is not None else '')

Этот код добавляет '' к списку результатов, если x равен None, и в противном случае вычисляет f(x). Желаемый результат также может быть достигнут с использованием понимания списка, но с необходимой корректировкой синтаксиса:

results = [f(x) if x is not None else '' for x in xs]

Ключевое отличие заключается в порядке предложений if и else в понимании списка. Правильный синтаксис требует размещения предложения if перед частью for, за которым следует предложение else.

В общем, синтаксис для понимания списка с условием if/else следующий:

[f(x) if condition else g(x) for x in sequence]

Для списков, включающих только условия if для фильтрации элементов из исходной последовательности, синтаксис это:

[f(x) for x in sequence if condition]

Обратите внимание, что условные выражения, используемые в синтаксисе if/else для списков, отличаются от конструкции if, используемой для фильтрация. Условные выражения позволяют выбирать между двумя выражениями на основе условия, аналогичного тернарному оператору ?:, встречающемуся в других языках. Например:

value = 123
print(value, 'is', 'even' if value % 2 == 0 else 'odd')

В этом примере выводится информация о том, является ли значение четным или нечетным, с использованием условного выражения.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3