类就是包含属性和行为的一种说法,在程序上的class即是类
对象即是描述一个客观存在的事物,任何对象或事物都存在属性和行为这两大特征,所以“对像”可以指代世间万物
类是程序中的“设计图纸
对象是基于图纸生产的实体
生活中或是程序中,我们都可以使用设计表格、生产表格、填写表格的形式组织数据
总结
进行对比,在程序中:
设计表格,称之为:设计类 (class)
打印表格,称之为:创建对象
填写表格,称之为:对象属性赋值
面向对象编程就是,使用对象进行编程。
即,设计类,基于类创建对象,并使用对象来完成具体的工作
class memberlist:
name = None
age = None
education= None
callnumber=None
mem = memberlist()
mem.name="jaky"
mem.age=19
mem.education="*站大学"
mem.callnumber="19836245678"
mem = memberlist()
mem.name="jaky"
mem.age=19
mem.education="*站大学"
mem.callnumber="19836245678"
**类的成员包含数据(类的属性)与方法(类的行为)**这二者构成了一个完整的类
称之为:成员变量
如上所展示的memberlist类一样,这个类中的数据表示的是一个人的信息(相当于一个个人信息表),
通过这个类创建一个mem的对象(相当于打印了一份信息表),
再向对象中的属性填写值(相当于填写个人信息表)
称之为:成员方法
“方法”顾名思义,可以执行一些操作的代码,也就是写在类里面的函数
不过只有类里面的函数才可以称之为方法,定义再类外面的只能称之为函数。
当你定义方法时,会自动填充一个self变量
1.self表示的是类本身
2.只有通过self,成员方法才可以访问类内部的成员变量
3.self出现在形参列表中,但不占用形参位置,不用理会
class memberlist:
name = None
age = None
education= None
callnumber=None
def introduce(self):
print(f"你好,我叫{self.name}是{self.education}的学生")
mem = memberlist()
mem.name="jaky"
mem.age=19
mem.education="*站大学"
mem.callnumber="19836245678"
mem.introduce()
效果
当然也可以在方法中设置你想要传入参数的形参
# 构造方法
class Student:
name = None
age = None
address = None
def __int__(self, name, age, address):
self.name = name
self.age = age
self.address = address
def input_information():
stu = Student
stu.name = input("请输入学生姓名:")
stu.age = input("请输入学生年龄:")
stu.address = input("请输入学生地址:")
return stu
def print_information(i, stu):
print(f"完成第{i + 1}位学生信息,信息为", end="")
print(f"【学生姓名:{stu.name},年龄:{stu.age},地址:{stu.address}】")
def main1():
count = 5
stuls = []
for i in range(count):
print(f"当前录入第{i + 1}位学生信息,总共需录入{count}位学生信息")
stuls.append(input_information())
print_information(i, stuls[i+1])
main1()
定义一个构造方法名称__init__
在构造方法内要想用成员变量也要用self关键字
class information:
def __init__(self, name, age, address):
self.name = name
self.age = age
self.address = address
info = information("jaky", 18, "jiangxi")
print(info.name)
print(info.age)
print(info.address)
在使用构造方法的同时,成员变量也创建完成了