Python案例教学之面向对象【第五课】

简介: Python是一种典型的面向对象的语言,Python中的数据都是对象Python 用面向对象的编写实现大象进冰箱的整个过程Python 编写一个学生类,要求有一个计数器,每次实例化后计数实例化了多少个学生

面向对象编程

首先了解一下面向对象编程
面向对象编程(Object Oriented Programming,OOP),是一种程序设计思想,
解决软件复用的设计和编程方法。
• 本质是以建立模型体现出来的抽象思维过程。模型用于反映现实世界中事物特征。
• 任何一种事物都可以作为对象,“万物皆对象” ,对象包含了数据和操作数据的
函数。
• 例如,在实际应用中,可以将一个人抽象为一个类,该类中包含一个人的“姓名,
年龄,性别”等信息。
• Python是一种典型的面向对象的语言,Python中的数据都是对象。

基本概念

•类: 用来描述具有相同的属性和方法的对象的集合。定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
• 对象:通过类定义的数据结构实例。
• 实例化:创建一个类的实例,类的具体对象。
• 类的成员:包括属性,方法等。
• 继承:即一个类(derived class)继承基类(base class)的属性和方法。
• 方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改
写,这个过程叫方法的覆盖(override),也称为方法的重写。

Python 用面向对象的编写实现大象进冰箱的整个过程

首先应明白分几步:
1.把冰箱门打开
2.把大象放进去
3.把冰箱门关上

多写了一个动物类和电器类,这样就可以把任何动物放入任何电器内了!

class animals():
    def __init__(self, name):
        self.name = name


class elephant(animals):
    def go(self):
        print("把%s放进去" % self.name)


class electrics():
    def __init__(self, name):
        self.name = name


class refrigerator(electrics):
    def open(self):
        print("打开%s门!" % self.name)

    def close(self):
        print("关闭%s门" % self.name)


if __name__ == '__main__':
    e = elephant("大象")
    r = refrigerator("冰箱")
    r.open()
    e.go()
    r.close()

Python 编写一个学生类,要求有一个计数器,每次实例化后计数实例化了多少个学生

class school():
    def __init__(self, name, sex, age):
        self.name = name
        self.sex = sex
        self.age = age


class student(school):
    num = 0

    def instant(self):
        student.num += 1
        print("%s实例化,共实例化%d个学生" % (self.name, student.num))


if __name__ == '__main__':
    stu1 = student("黑刃", "男", "39")
    stu2 = student("九幽", "女", "19")
    stu3 = student("无极", "男", "20")
    stu4 = student("天机", "女", "45")
    stu5 = student("亡灵", "女", "66")
    stu6 = student("妖匠", "男", "45")
    stu1.instant()
    stu2.instant()
    stu3.instant()
    stu4.instant()
    stu5.instant()
    stu6.instant()
目录
相关文章
|
15天前
|
Python
python集合的创建案例分享
【4月更文挑战第11天】在Python中,通过大括号或`set()`函数可创建集合。示例包括:使用大括号 `{}` 创建带元素的集合,如 `{1, 2, 3, 4, 5}`;使用 `set()` 函数从列表转换为集合,例如 `set([1, 2, 3, 4, 5])`,以及创建空集合 `set()`。当元素有重复时,集合会自动去重,如 `set([1, 2, 2, 3, 4, 4, 5])`。但尝试将不可哈希元素(如列表、字典)放入集合会引发 `TypeError`。
17 1
|
18天前
|
Python
Python文件操作学习应用案例详解
【4月更文挑战第7天】Python文件操作包括打开、读取、写入和关闭文件。使用`open()`函数以指定模式(如'r'、'w'、'a'或'r+')打开文件,然后用`read()`读取全部内容,`readline()`逐行读取,`write()`写入字符串。最后,别忘了用`close()`关闭文件,确保资源释放。
18 1
|
2天前
|
人工智能 Python
【AI大模型应用开发】【LangChain系列】实战案例1:用LangChain写Python代码并执行来生成答案
【AI大模型应用开发】【LangChain系列】实战案例1:用LangChain写Python代码并执行来生成答案
6 0
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
总结几个GPT的超实用之处【附带Python案例】
总结几个GPT的超实用之处【附带Python案例】
|
10天前
|
Python
[重学Python]Day 2 Python经典案例简单习题6个
[重学Python]Day 2 Python经典案例简单习题6个
15 0
|
18天前
|
Python
Python数据类型学习应用案例详解
Python基础数据类型包括整数(int)、浮点数(float)、字符串(str)、布尔值(bool)、列表(list)、元组(tuple)、字典(dict)和集合(set)。整数和浮点数支持算术运算,字符串是不可变的文本,布尔值用于逻辑判断。列表是可变有序集合,元组不可变。字典是键值对的无序集合,可变,而集合是唯一元素的无序集合,同样可变。示例代码展示了这些类型的基本操作。
11 1
|
18天前
|
Python
Python控制结构学习应用案例详解
Python控制结构包含条件语句、循环语句和异常处理。条件语句用if-elif-else判断数字正负;for循环示例输出1到10的整数,while循环计算1到10的和;异常处理用try-except-finally处理除零错误,打印提示信息并结束。
10 3
|
18天前
|
Python
Python函数学习应用案例详解
【4月更文挑战第7天】学习Python函数的应用,包括计算两数之和、判断偶数、计算阶乘、生成斐波那契数列及反转字符串。示例代码展示了函数接收参数和返回结果的功能,如`add(a, b)`求和,`is_even(num)`判断偶数,`factorial(n)`计算阶乘,`fibonacci(n)`生成斐波那契数,以及`reverse_string(s)`反转字符串。
14 1
|
18天前
|
Python
Python面向对象编程学习应用案例详解
面向对象编程在Python中通过类定义对象结构和行为。示例:1) 使用`class`关键字定义类,如`class Person`;2) `__init__`方法初始化对象属性,如`self.name`和`self.age`;3) 实例化对象,如`person1 = Person("张三", 25)`;4) 访问属性和方法,如`person1.name`;5) 定义类方法,如`def introduce(self)`;6) 调用方法,如`person1.introduce()`;7) 类继承,如`class Student(Person)`;8) 多态,通过继承重写方法实现。
9 1
|
23天前
|
人工智能 机器人 测试技术
【python】python闭包的详细解读(傻瓜式教学)
【python】python闭包的详细解读(傻瓜式教学)