一、对象的绑定方法
- 类名称空间中定义的数据属性和函数属性都是共享给所有对象用的
- 对象名称空间中定义的只有数据属性,而且是对象所独有的数据属性
class Student1:
school = 'xiwangzhongxue'
def __init__(self,name,age):
self.name = name
self.age = age
def choice(self):
print(f'{self.name}选课...')
def study(self):
print('学习....')
二、类使用对象绑定对象
class Student1:
school = 'xiwangzhongxue'
def __init__(self,name,age):
self.name = name
self.age = age
def choice(self):
print(f'{self.name}选课...')
def study(self):
print('学习....')
stu1 = Student('小明', 18)
stu2 = Student('小红', 17)
print(stu1.name)
print(stu1.school)
小明
xiwangzhongxue
- 类中定义的函数是类的函数属性,类可以使用,但使用的就是一个普通的函数而已,意味着需要完全遵循函数的参数规则,该传几个值就传几个
print(Student.choice(123))
‘int‘ object has no attribute ‘name‘
三、对象使用对象的绑定方法
- 定义在类内部的方法
- 如果类来调用:就是一个普通函数,有几个参数就需要传几个参数
- 对象来调用,它叫对象的绑定方法,第一个参数不需要传,自动传入当前调用它的对象
class Student1:
school = 'xiwangzhongxue'
def __init__(self, name,age):
self.name = name
self.age = age
def choice(self):
print(f'{self.name}选课...')
def study(self):
print('学习....')
stu1 = Student1('小明',18)
stu1.choice()
stu2 = Student1('小红',20)
stu2.choice()
小明选课...
小红选课...
原文地址:https://www.cnblogs.com/xichenHome/p/11414729.html
时间: 2024-11-04 19:58:51