Рубрики
Без рубрики

Как работает «и приоритет» работают в булевом выражении Python?

В Python логический и оператор имеет приоритет до булева или оператора. Как именно эта работа? Рассмотрим следующий пример код головоломки: # Головоломка мозга A, B, C, True, True, False, если B, а не D и A, а не B: Если B или A: Print (’42 ‘) ELIF D и C: … Как работает «и приоритет» работают в булевом выражении Python? Прочитайте больше “

Автор оригинала: Chris.

В Python, логический и Оператор имеет приоритет до логика или оператор. Как именно эта работа?

Рассмотрим следующий пример код головоломки:

# Brain Puzzle
a, b, c, d = True, True, True, False

if b and not d and a and not b:
    if b or a:
        print('42')
    elif d and c:
        print('yes')
    print('yes')
elif d and c or b:
    if b and not d or d:
        print('python')
    print('yes')
else:
    print('42')

Прежде чем читать дальше, возьмите предположение: Какой вывод этого кода головоломка? (Вы можете решить головоломку интерактивно в приложении Finxter.)

Головоломка проверяет ваше понимание логики приоритета: и до или Отказ

Один из моих «Coffe Break Python» по электронной почте участники по электронной почте Пол попросил следующий замечательный вопрос относительно этой головоломки:

«Спасибо за эти головоломки – они держат мою мозгу.

С помощью этого, не могли бы вы предоставить пару строк о приоритете оценки логической операции без скобок. Как это то, я верю. Я понял это неправильно, так что я смотрю на ваше объяснение. Вы говорите, что (а) означает, и «и» и «не». Но проблема заключается в том, как эти объединяются. Работа назад от ответа, код, очевидно, попадает в блок ELIF, а затем запускает оба элемента. Но почему?

Спасибо, Пол “

Отличный вопрос! Вот казнистый поток головоломки:

Важная часть – это Элиф Заявление, где я указывал на логику приоритета, используя кронштейны: выражение D и C или B семантически эквивалентен выражению (D и C) или B Отказ

Следовательно, выход головоломки кода:

python
yes

Куда пойти отсюда?

Если у вас есть трудности понять эти основные операторы логики, рассмотрим книгу «Кофе-брейк Python Workbook», которая содержит множество пазлов практического кода, как этот. Это улучшит ваши навыки понимания быстрого кода.

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python One-listers (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.