Я использую Linux, создал venv на Python 3.9, установил ruff в venv и написал этот код:
Код: Выделить всё
def process_data(data: list[int]) -> str:
match data:
case []:
return "No data"
case [first, *_] if (average := lambda: sum(data) / len(data)) and average() > 50:
return f"Data average is high: {average():.2f}, starting with {first}"
case _:
return f"Processed {len(data)} items."
Синтаксис соответствия отсутствует в Python 3.9, поэтому при выполнении проверки я ожидаю появления ошибки. Я попытался установить project.requires-python и ruff.target-version, но последний, похоже, используется только для форматтера в соответствии с документацией. Что мне не хватает?
Подробнее здесь:
https://stackoverflow.com/questions/793 ... wed-syntax