python 面向对象基础
Posted 淡淡的风景
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 面向对象基础相关的知识,希望对你有一定的参考价值。
>>> class P:pass
...
>>> type(P)
<class \'type\'>
>>> p = P()
>>> type(p)
<class \'__main__.P\'>
P 是一个模板(模具),实例是通过这个模板(模具),
添加了不同的初始化参数生产出来的具体产品,
可以有多个,且每个具体产品可以有不同参数设定不同的造型。
类:
管理一组数据(可以是0个、1个或多个),以及提供操作这组数据的
相关方法,数据和方法组成了类。
class Person(object): #定义一个类
def __init__(self,name,sex,height,weight,bachelor): #申明人的一些属性
self.name = name
self.sex = sex
self.height = height
self.weight = weight
self.bachelor = True
def print_name(self) #定义一个打印姓名的方法
Print(self.name)
wulaoshi = Person("wulaoshi", "M", 180, "200", True) #实例化一个对象 吴老师
lilaoshi = Person("lilaoshi", "M", 101, ”160”, False)
print (wulaoshi.sex)
print (lilaoshi.weight)
2.学生学习成绩讲解
# encoding=utf-8
class Student(object):
student_num=0 #类变量 学生数量
def __init__(self,name,school,grade,course=[],course_grade={}):
self.name = name
self.school = school
self.grade =grade
self.course = course
self.course_grade = course_grade
Student.student_num+=1 #类变量前面加类名Student
def get_name(self):
return self.name
def get_course(self): #获取这个学生所有学习的课程(打印)
print(self.course)
def set_course(self, course):
self.course = course
def set_course_grade(self, course_grade): #设定学生学习课程的成绩
self.course_grade = course_grade
def get_course_grade(self):
print(self.name + "的学习成绩如下:")
for course, grade in self.course_grade.items(): #学习成绩用dict表示,获取学生课程的成绩用key,value取出来
print("%s:%s" % (course, grade))
s1=Student("猴子","南昌大学" ,"计算机2014级")
s2=Student("虎子","山西大学" ,"文学系2016级")
s1.set_course(["计算机","线性代数","java基础"]) #实例化这个学生学习的课程,用一个list来表示
s2.set_course(["语文","数学","英语"])
s1.get_course()
s2.get_course()
s1.set_course_grade({"计算机":81,"线性代数":75,"java基础":90}) #实例化学习课程的成绩,用dict表示
s2.set_course_grade({"语文":82,"数学":72,"英语":68})
s1.get_course_grade()
print("*" * 20)
s2.get_course_grade()
print(Student.student_num)
以上是关于python 面向对象基础的主要内容,如果未能解决你的问题,请参考以下文章