Почему Pyright выдает здесь ошибку несовместимости типов?Python

Программы на Python
Anonymous
Почему Pyright выдает здесь ошибку несовместимости типов?

Сообщение Anonymous »

Код: Выделить всё

from pandas import DataFrame, Series

# This function prunes the dataframe rows to those meeting specified criteria
def prune_to_wanted_rows(st_df: DataFrame, recency_date: str) -> DataFrame:
st_df = st_df[ # pyright error message (see below) here
(st_df["assetType"] == "ore")
& (st_df["priceCurrency"] == "USD")
& (st_df["endDate"] >= recency_date)
# other boolean expressions omitted for brevity
]
return st_df
Сообщение об ошибке, все в одной строке, с дефисами, заменяющими некоторые пробелы:

Выражение тип "Series | Unknown | DataFrame" несовместим с объявленным типом "DataFrame" ------Тип "Series | Unknown | DataFrame" несовместим с типом "DataFrame" ------Тип "Series" несовместим с «DataFrame»

Я думаю, это проблема только потому, что сообщение об ошибке уродливо. Я могу подавить его с помощью #pyright: ignore, и код будет работать как задумано. Я (пока) не вижу несовместимости типов, но есть ли смысл в том, что пирайт «правильный»?

Подробнее здесь: https://stackoverflow.com/questions/784 ... error-here

Вернуться в «Python»