因此,假设我有一个存储在变量名jsonobject中的JSON对象,并且想要从它读取一个特定的属性,假设是address.state。如果我说jsonobject.address.state,我得到了预期的输出,但是如果我试图查找的属性,即address.state存储在一个变量中,比如key,那该怎么办呢?jsondata.address.state # this works file下面是jsonparser的</em
如果我使用__getattr__并调用a.b.c,其中a是类的一个实例,那么在__getattr__中就会得到"b",这意味着我也需要递归来覆盖访问c。但是如果递归,我将不知道哪个调用是最后一个,所以我不知道何时返回最终值,即无法区分a.b和(a.b).c如何在超限操作中得到整个链"b“、"c”?例如,A是我的类,然后假设我想:
print(a.b) # prints "hello&qu
显然,当实例化Foo时,这将导致无限递归。我在早期版本中通过删除init的最后一行并将以下内容添加到Foo类中来解决这个问题: if attr == 'sub_unit__getattr__(attr)但是,在查看代码时,我意识到出于其他原因,我需要一个Bar实例,而不是它的一个子类。为了查看是否可以覆盖单个实例<e
当我尝试运行我在Windows上编写的python (3.4.3)程序时,我多次收到以下错误消息,直到出现最大递归深度错误:File "C:\Anaconda3\lib\asyncore.py", line 411, in __getattr__
File "C:\Anaconda3\lib\asyncore.py", line 411, i