python里,创建实例时声明他的一个属性是另一个类的实例,但创建时并不给它赋值

class Person(object):
def init(self, name):
self.name = name

class Gun(object):
def init(self, name):
self.name = name

person = Person("Able")
gun = Gun("AK47")
person.gun = gun
如上,我想在创建person的时候给它声明一个gun属性,但并不想给它赋值,这要怎么搞?
怎么才能在.gun的时候能点出来并且.gun.name也能点出来

在__init__()時設為None就可以了

程式碼如下:

class Gun:
    def __init__(self, name):
        self.name = name

class Person:
    def __init__(self, name):
        self.name = name
        self.gun = None

person = Person("Able")
gun = Gun("AK47")
person.gun = gun

print("person.name: %s" % person.name)
print("person.gun.name: %s" % person.gun.name)