构造函数

class Student(object):
    # 默认属性
    country = "China"
    game_lever = 0
    # 构造函数 在类实例化的时候会主动优先执行(无需人为调用), 用于初始化对象
    def __init__(self,name,age):
        # 初始化属性
        self.name = name
        self.age = age

s1 = Student("Scott",18)
s2 = Student("Judy",19)  

print(id(s1))
print(id(s2))
print(s1.name,s1.age)
print(s2.name,s2.age)
140452344905536
140452345303344
Scott 18
Judy 19

来看一个例子

class Student(object):
    # 默认属性
   name = ''
   age =0
    # 构造函数 在类实例化的时候会主动优先执行(无需人为调用), 用于初始化对象
    def __init__(self,name,age):
        name = name
        age = age

s1 = Student("Scott",18)
s2 = Student("Judy",19)  

print(id(s1))
print(id(s2))
print(s1.name,s1.age)
print(s2.name,s2.age)
top/end/python/class/c5.py
140246094159680
140246094557488
 0
 0

可以看到,属性赋值失败了,原因是, python类中只能用self才能访问

另外需要注意的是:我们不用显示的去声明name,age,如例1挂载到self对象上就行了

results matching ""

    No results matching ""