python 의 --- 하위 클래스 부모 클래스 속성 간 의 관계
1528 단어 python 학습 노트
class P(object):
def __init__(self):
self.value = 0
self.x = 1000
def get(self):
print(self.value)
print(self.b)
return id(self.value)
class C(P):
def __init__(self):
super(C, self).__init__()
self.value = 44
self.b = 6
def a(self):
self.get()
print (self.x)
P().get()
# :
/usr/bin/python3.6 "/home/zxy/code/nnUNet-master (myself)/nnunet/run/test.py"
0
Traceback (most recent call last):
File "/home/zxy/code/nnUNet-master (myself)/nnunet/run/test.py", line 24, in
P().get()
File "/home/zxy/code/nnUNet-master (myself)/nnunet/run/test.py", line 9, in get
print(self.b)
AttributeError: 'P' object has no attribute 'b'
하위 클래스 C 는 부모 클래스 P 를 계승 하지만, 부모 클래스 로 대상 을 만 들 때 하위 클래스 C 의 속성 을 사용 할 수 없습니다.
class P(object):
def __init__(self):
self.value = 0
self.x = 1000
def get(self):
print(self.value)
print(self.b)
return id(self.value)
class C(P):
def __init__(self):
super(C, self).__init__()
self.value = 44
self.b = 6
def a(self):
self.get()
print (self.x)
# P().get()
C().a()
C().get()
# :
/usr/bin/python3.6 "/home/zxy/code/nnUNet-master (myself)/nnunet/run/test.py"
44
6
1000
44
6
하위 클래스 의 속성 은 부모 클래스 에 의 해 호출 될 수 있 지만, 하위 클래스 구조의 대상 을 통과 해 야 부모 클래스 에 값 을 부여 할 수 있 습 니 다.