未解析的属性参考

时间:2017-12-11 02:34:48

标签: python python-3.x pycharm

我使用新版本的PyCharm来处理Python。我收到了

  

未解析的属性引用' ItemLocation'对于课程'项目'

但应用程序启动正常,没有任何错误或崩溃,任何想法?

class Item:
    def __init__(self, state = '', location = '', realm = 'All', index =- 1):
        self.__dict__ = {
            'ActiveState': state,
            'ItemEquipped': 0,
            'ItemLocation': location,  # <-- DEFINED HERE
            'ItemRealm': realm,
            'ItemLevel': '51',
            'ItemQuality': '100',
            'ItemType': '',
            'ItemName': '',
            'ItemAFDPS': '',
            'ItemSpeed': '',
            'ItemBonus': '',
            'ItemSource': '',
            'LeftHand': '',
            'ItemDamageType': '',
            'ItemRestrictions': list(),
            'ItemNotes': '',
            'ItemRequirement': '',
            'TemplateIndex': index,
        }

        self.ItemSlotList = list()

        if self.ItemLocation in SlotList['Jewelery']:  # <-- HERE
            self.ActiveState = 'drop'
            self.ItemEquipped = 2
        elif self.ItemLocation in SlotList['Armor']:  # <-- HERE
            self.ActiveState = 'crafted'
            self.ItemEquipped = 2
        elif self.ItemLocation in SlotList['Weapons']:  # <-- HERE
            self.ActiveState = 'drop'
            self.ItemEquipped = 0
        elif self.ItemLocation in SlotList['Mythical']:  # <-- HERE
            self.ActiveState = 'drop'
            self.ItemEquipped = 2

        # TODO: DETERMINE 'ItemEquipped' FOR WEAPONS BASED ON CLASS SELECTION

        self.ItemSlotList = self.makeItemSlots()

对不起,如果事情看起来很无聊,我还在学习。我正在运行Python 3和PyQt5

1 个答案:

答案 0 :(得分:1)

我没有使用PyCharm,但我认为它没有检查__dict__分配,因为它们允许动态分配,因此它基本上必须运行代码来检查它。 / p>