Python 如何访问kivy中另一个类的对象属性而不获取AttributeError:';超级';对象没有属性'__getattr';

Python 如何访问kivy中另一个类的对象属性而不获取AttributeError:';超级';对象没有属性'__getattr';,python,kivy,Python,Kivy,您好,我正在尝试使用self.id从其他类访问对象的属性。。但是我得到了一个恼人的错误:AttributeError:“super”对象没有属性“\uu getattr\uuuu” 这是我的代码,当我点击“男孩按钮”时,我得到了错误 .py文件 from kivy.app import App from kivy.uix.boxlayout import BoxLayout from kivy.properties import ObjectProperty class Get_People(

您好,我正在尝试使用self.id从其他类访问对象的属性。。但是我得到了一个恼人的错误:AttributeError:“super”对象没有属性“\uu getattr\uuuu” 这是我的代码,当我点击“男孩按钮”时,我得到了错误

.py文件

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.properties import ObjectProperty

class Get_People(BoxLayout):
      root_lbl=ObjectProperty()

class Get_Boys(BoxLayout):
     label_b=ObjectProperty()

     def show(self):
          self.ids. root_lbl.text='i am called'


class lstApp(App):
   def build(self):
        self.load_kv('dates_test.kv')
        return Get_People()

if __name__=='__main__':
      lstApp().run() 
这是.Kv文件

<Get_People>:
      root_lbl: root_lbl
      orientation: 'vertical'

      Button:
          name: root_btn
          id: root_btn
          text: "I am Root Button"
       Label:
          id: root_lbl
          text: "I am Root Label"
       Get_Boys:

<Get_Boys>:
    label_b: label_b
    Button:
        id: button_b
        text: "Button for boys"
        on_press: root.show()

    Label:
        id: label_b
        text: "Label for boys"
:
root\u lbl:root\u lbl
方向:“垂直”
按钮:
姓名:root_btn
id:root\u btn
文本:“我是根按钮”
标签:
id:root\u lbl
文本:“我是根标签”
男孩们:
:
标签b:标签b
按钮:
id:按钮b
文字:“男孩按钮”
按:root.show()
标签:
id:label_b
文字:“男孩标签”

如果我们观察到
Get\u Boys
的子元素是
button\u b
label\u b
,因此这些元素可以通过
id
访问。但是如果我们查看
Get\u People
Get\u Boys
是一个孩子,因此您可以通过
parent
方法访问
Get\u People
,然后通过
root\u lbl
访问:

class Get_Boys(BoxLayout):
     label_b=ObjectProperty()

     def show(self):
        self.parent.root_lbl.text='i am called'

很高兴它像魔术一样工作,谢谢,有什么地方我可以提前了解它吗