微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何修复 mypy“没有属性”错误,而类具有该属性

如何解决如何修复 mypy“没有属性”错误,而类具有该属性

我对 python 真的很陌生,所以也许我在问一个明显的问题。 mypy返回的错误是:

automaxlair\matchup_scoring.py:57: error: "Pokemon" has no attribute "ability_name_id"

确实,matchup_scoring.py 的第 57 行,我正在这样做:编辑:在第 57 行之前添加了更多行以显示方法的定义

def ability_damage_multiplier(attacker: Pokemon,move_index: int,defender: Pokemon
) -> float:
    """Return a damage multiplier stemming from abilities."""

    # Account for abilities that affect the damage of certain move types.
    if attacker.ability_name_id not in ('mold-breaker','turboblaze','teravolt'):

在matchup_scoring.py的开头,我在做

from automaxlair import pokemon_classes
Pokemon = TypeVar('Pokemon')

在导入的文件(automaxlair\pokemon_classes.py)中,我有

class Pokemon():
    def __init__(self,ability_name_id: str
    ):
        self.ability_name_id = ability_name_id

有人可以向我解释什么是错的吗?它对口袋妖怪的所有其他属性都这样做,所以我只选择了一个。如果有问题,我正在使用 python 3.8

提前致谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。