1、类(class)的定义
类是面向对象编程中重要的概念 类(class)是定义对象的模板,对象是类(class)的具体设置 首先定义类class
class CuteCat:
def __inif__(self):
self.name = "加菲"
#引用时,只需要在类的模板中输入具体的参数,其中self无需手动输入
cat1=CuteCat()
#引用具体的性质name
print(cat1.name)
注意:
1、类的命名:使用驼峰命名法,也就是不用下划线,而是首字母大写的方式命名(UserName、CuteCat)
2、定义类的固定格式: def __inif__ (self, 性质1) 【inif前后各两个下划线】
3、类的第一个性质永远是self,即对自身的定义;后续定义对象的时候,无需对self再赋值
对于类的性质赋值给予更灵活的变化,可以添加在定义中: def __inif__(self, 性质1,性质2 )
class CuteCat:
def __inif__(self,cat_name,cat_color):
self. name= cat_name
self.color = cat_color
"其中,name是性质,cat_name是在定义对象时给name的赋值"
cat1=CuteCat("加菲","orange")
cat1=CuteCat("Tom","grey")
#引用具体参数:
print(cat1.name)
print(cat2.color)
#输出的结果为:
加菲
grey
课程作业
定义一个学生类 要求: # 1. 属性包括学生姓名、学号,以及语数英三科的成绩 # 2. 能够设置学生某科目的成绩 # 3. 能够打印出该学生的所有科目成绩
class Student:
def __init__(self, name, student_id):
self.name = name
self.student_id = student_id
self.grades = {"语文": 0, "数学": 0, "英语": 0}
#dict={}是按照字典设置各科成绩,则按照更改字典的格式修改成绩
def set_grade(self, course, grade):
if course in self.grades:
self.grades[course] = grade
def print_grades(self):
print("学生{self.name} (学号:{self.student_id}) 的成绩为:")
for course in self.grades:
print("{course}: {self.grades[course]}分")
chen = Student("小陈", "100618")
chen.set_grade("语文", 92)
chen.set_grade("数学", 94)
chen.print_grades()
# zeng = Student("小曾", "100622")
# print(chen.name)
# zeng.set_grade("数学", 95)
# print(zeng.grades)