Разбор по шагам
1️⃣Переменная 𝚡 имеет значение False.
2️⃣В условии 𝚢 := 𝚡 𝚘𝚛 𝚃𝚛𝚞𝚎 сначала вычисляется правая часть: 𝚡 𝚘𝚛 𝚃𝚛𝚞𝚎 → False or True → True.
3️⃣Затем walrus-оператор присваивает это значение переменной 𝚢, то есть 𝚢 = 𝚃𝚛𝚞𝚎.
4️⃣Условие if истинно (𝚢 равно True), поэтому выполняется print(y) и на экран выводится True.
Почему это важно
Если бы разработчик хотел присвоить 𝚢 значение 𝚡, а потом проверить 𝚢 𝚘𝚛 𝚃𝚛𝚞𝚎, нужны скобки: (𝚢 := 𝚡) 𝚘𝚛 𝚃𝚛𝚞𝚎. Без понимания приоритета легко получить неожиданный результат.
Post #4541
832
- ❤ 3