gpt4 book ai didi

python - 继承:获取__init__的属性

转载 作者:行者123 更新时间:2023-12-01 05:21:48 25 4
gpt4 key购买 nike

在下面的示例中,B 类或 C 是否可以访问 A 中的 a 属性 内部类?

class A:

def __init__(self, a):
self.a = a

def C_test(self):
for i in range(4):
c = self.C()

class C:
print(self.a)


class B(A):

def __init__(self):
print(self.a)

我怎么会收到这个错误?

Traceback (most recent call last):
File "/Users/home/Desktop/Pygame/test.py", line 1, in <module>
class A:
File "/Users/home/Desktop/Pygame/test.py", line 10, in A
class C:
File "/Users/home/Desktop/Pygame/test.py", line 11, in C
print(self.a)
NameError: name 'self' is not defined

最佳答案

self 不是 Python 中的特殊变量名称 - 它只是通常为方法的第一个参数指定的名称,该名称绑定(bind)到调用该方法的对象。

类 C 中的 self.a 不会出现在 self 被列为参数的方法定义中,因此 self 在那里没有任何意义。

关于python - 继承:获取__init__的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22163232/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com