类的定义
格式:
格式: # 经典类 class 类名: # 新式类 class 类名(父类名):
经典类
不由任何类派生,或者说不继承任何类
class student:
pass # 为了保证代码结构完整,在类下边必须书写表达式,如果没有使用pass占位
新式类
括号内是父类,也就是存在异地你个的继承关系
class teacher(object):
# pass
类的实例化
class Student(object):
# 定义方法.定义方式和函数定义类似
def study(self):
print('我在听直播课,贼有意思,就是学习非常不努力我也能听懂')
def eat(self):
print('我在吃脑白金,补补脑子继续学习')
类的命名
类的命名,需要遵守大驼峰命名法
类名,严格区分大小写,也遵守标识符的命名规则
class ChineseStudent():
pass
s3 = Student()
s4 = student()
s3.eat()
s4.eat()
self
在类的内部定义的时候,自动传入一个self,在调用的时候不需要对self传值
实例属性在类的外部添加获取
# 定义类
class Person(object):
def eat(self):
print('早饭吃了油条和包子,血糖110')
在创建实例后再对类的属性进行添加,除了本身的实例,其他实例无法调用-
# 实例化属性
p1 = Person()
# 给p1添加实例属性
p1.name = 'xiaoming'
# 调用实例属性
print(p1.name) # xiaoming
下面的实例无法调用上面的的实例在类的外面添加的实例属性
p2 = Person()
p2.age = 18
# AttributeError: 'Person' object has no attribute 'name'
# print(p2.name)
# print(p1.age)