Вопрос о меканизме условий проверки. if ONE or TWO:
Будет ли проверено состояние TWO, если ONE == True
? Где я могу прочитать об этом?Python. Будет ли проверено условие TWO, если `ONE == True`?
0
A
ответ
2
В python это называется short-circuiting. Логические выражения оцениваются слева направо (с учетом скобок), и выполнение останавливается, как только становится ясно, что будет логическим ответом.
Попробуйте этот код в интерактивной консоли:
>>> def one():
... print "one called"
... return True
>>> def two():
... print "two called"
... return True
>>> one() or two()
Ответом будет:
one called
True
То же самое происходит и с and
(если первый аргумент является ложным, второй аргумент никогда оценивали).
1
Да, Python short-circuits Оценка булевых выражений.
2
Это называется short-circuiting, и Python действительно поддерживает его. Вы можете прочитать объяснение в the docs.
Смежные вопросы
- 1. Python создает цикл, если условие не проверено
- 2. ИЛИ Условие - true, если И будет применяться?
- 3. Python True/False, если/Элиф/другое условие
- 4. One form two action
- 5. C++ если условие не проверено после goto
- 6. two people one excel file
- 7. если условие не возвращается true
- 8. CodeIgniter - Two Forms, One Page
- 9. One Modal Bootstrap two action
- 10. Когда будет, если (! Ptr_name) будет true?
- 11. One Two Three Four Five
- 12. Бросив исключение, если условие вызывает, если условие будет проигнорировано
- 13. проверено условие и условие перед отправкой формы
- 14. Можно ли использовать условие `required: true` validation by?
- 15. Если условие не будет работать?
- 16. boolean allLess (int [] one, int [] two) method
- 17. Если условие всегда возвращает true (Java)
- 18. Если string.Contains two numbers + "x" + one number then
- 19. Если условие Python игнорируется?
- 20. Почему while обрабатывает true, если условие ложно?
- 21. Powershell - Return True, если условие соответствия строки
- 22. PHP: if (! $ One == $ two) не работает всегда?
- 23. браузер кнопку назад/#one #two т.д.
- 24. Two is not Two - условие выбора не подходит
- 25. Laravel One Form Two Submit Buttons
- 26. PHPUnit Assert True One (1)
- 27. LibreOffice Calc two Alignments - One Cell
- 28. create-two-threads-both -display-numbers-one after one
- 29. Как изменить строку «One Two Three <5 spaces> .zip» на «One Two Three.zip»
- 30. WPF Two Datagrids One Selected Row
Считаете ли вы, что он не может знать значение слова * короткое замыкание *? – Trimax