I run the follow code ,it runs ok.
class A:
def __init__(self):
pass
class B:
z = A()
def __init__(self):
pass
if __name__ == '__main__':
pass
but when I place the "class A" behind the "class B",as follow:
class B:
z = A()
def __init__(self):
pass
class A:
def __init__(self):
pass
if __name__ == '__main__':
pass
I run it in PyCharm,it report the Traceback as follow :
Traceback (most recent call last):
File "D:/PythonStudy/AB.py", line 4, in <module>
class B:
File "D:/PythonStudy/AB.py", line 5, in B
z = A()
NameError: name 'A' is not defined
I am very confused why the "class A" not defined?