При попытке обновить мой интерпретатор PyCharm до Python 3.8 (.1) я столкнулся с проблемой. Хотя код, который использовал новый оператор walrus (:=
), выполнялся правильно, код вокруг него выделялся, как если бы он был недопустимым, как если бы это был код Python 3.7. При поиске решения я обнаружил, что следующее не работает.
- Перезапуск / очистка кэша
- Настройки> Редактор> Проверки> Python | Проверка совместимости кода
- Выбрана только версия 3.8 безрезультатно.
Почему мой переводчик смущен? Вот код, если он имеет какое-либо использование:
a = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
if (n := len(a)) > 10:
print(f"List is too long ({n} elements, expected <= 10)")