定义类:类名怎么定义?使用 class来定义一个类class类名:
类名一般需要遵守大驼峰命名法,每一个单词的首字母都大写
1.class<类名>
2.class<类名>(object):
eg:
小明今年18岁,身高1.75,每天早上跑完步,会去吃东西
小美今年17岁,身高1.65,小美不跑步,小美喜欢吃东西
class Student(object):关注这个类有哪些属性特征和行为
#在__init__方法里,以参数的形式定义特征,我们称之为属性
def __init__(self,name,age,height):
self.name=name
self.age=age
self.height=height
def run(self):
print(‘正在跑步‘)
def eat(self):
print(‘正在吃东西‘)
Student() ==>会自动调用__init__方法
#使用Student类创建了两个实例对象s1,s2
#s1和s2都会有name,age,height属性,同时都有run和eat方法
s1=Student(‘小明‘,18,1.75)
s2=Student(‘小美‘,17,1.65)
s1.run()
s2.eat()
class Student(object):
def __init__(self,x,y)
self.name = x
self.age = y
s1=Student(‘张三‘,18)
print(‘s1的名字是:‘s1.name)
1、调用__new__方法,申请一段内存空间
2、调用__init__方法,并让self指向申请好的那段内存空间
3、让s1也指向创建好的这段内存空间
s1=Student(‘张三‘,18) 这段代码具体做了什么呢?
1、调用__new__方法,用来申请内存空间 2、调用__init__方法传入采纳数,将self指向创建好的内存,填充数据 3、变量s1也指向创建好的内存空间如果调用没有属性,会报错attributeerror
如果这个属性以前不存在,会给对象添加一个新的属性
称之为动态属性
s.city = ‘上海‘ #给对象添加一个city属性
print(s.city)
如果这个属性以前存在,会修改这个属性对应的值
当然,我们可以拒绝这种情况,自己规定对象可以添加的属性
solts() #这个属性直接定义在类里,是一个元组,用来规定对象可以存在的属性,里面没有的就不能在后面进行使用,
eg:solts(‘name‘,‘age‘,‘city‘)
原文:https://www.cnblogs.com/LearningRoad/p/14692089.html