【数据分析之道-基础知识(十一)】面向对象

这篇具有很好参考价值的文章主要介绍了【数据分析之道-基础知识(十一)】面向对象。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【数据分析之道-基础知识(十一)】面向对象

专栏导读

✍ 作者简介:i阿极,CSDN Python领域新星创作者,专注于分享python领域知识。

本文录入于《数据分析之道》,本专栏针对大学生、初级数据分析工程师精心打造,对python基础知识点逐一击破,不断学习,提升自我。
订阅后,可以阅读《数据分析之道》中全部文章内容,包含python基础语法、数据结构和文件操作,科学计算,实现文件内容操作,实现数据可视化等等。
✍ 其他专栏:《数据分析案例》 ,《机器学习案例》

😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁评论📒+关注哦!👍👍👍

📜📜📜如果有小伙伴需要数据集和学习交流,文章下方有交流学习区!一起学习进步!💪

订阅专栏阅读:《数据分析之道》
【数据分析之道-基础知识(一)】字符串
【数据分析之道-基础知识(二)】列表
【数据分析之道-基础知识(三)】元组
【数据分析之道-基础知识(四)】字典
【数据分析之道-基础知识(五)】集合
【数据分析之道-基础知识(六)】函数
【数据分析之道-基础知识(七)】高级函数
【数据分析之道-基础知识(八)】循环语句
【数据分析之道-基础知识(九)】推导式
【数据分析之道-基础知识(十)】Lambda函数

1、简介

Python 是一种面向对象的编程语言,它提供了丰富的面向对象编程特性和语法。面向对象编程(OOP)是一种编程范式,它将数据和与之相关的操作封装在对象中,通过定义类和实例化对象来实现程序的组织和设计。

在 Python 中,面向对象编程的核心概念包括类(Class)、对象(Object)、属性(Attribute)、方法(Method)、继承(Inheritance)和多态(Polymorphism)等。

2、类与对象

类是对象的蓝图或模板,它定义了一组属性和方法,用于描述具有相同特征和行为的对象的集合。对象是类的实例,它具有类定义的属性和方法。

在 Python 中,定义类使用 class 关键字,通过类创建对象的过程称为实例化。以下是定义一个简单类的示例:

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

    def greet(self):
        print(f"Hello, my name is {self.name}.")

# 创建对象
person1 = Person("Alice", 25)
person2 = Person("Bob", 30)

# 调用对象的方法
person1.greet()
person2.greet()

Person 是一个类,它有两个属性 name 和 age,以及一个方法 greet。通过调用 Person 类的构造函数 init,可以创建 Person 类的实例(对象)。每个对象都有自己的属性值,通过 self 关键字来引用。

3、属性和方法

属性是对象的特征或状态,用于存储对象的数据。方法是对象的行为或操作,用于实现对象的功能。

在类中定义属性和方法时,需要使用特殊的 self 参数,它代表对象自身。通过 self,可以访问和操作对象的属性和方法。

以下是一个包含属性和方法的类示例:

class Rectangle:
    def __init__(self, width, height):
        self.width = width
        self.height = height

    def area(self):
        return self.width * self.height

    def perimeter(self):
        return 2 * (self.width + self.height)

# 创建对象
rectangle = Rectangle(5, 3)

# 调用对象的方法和访问属性
print("Area:", rectangle.area())
print("Perimeter:", rectangle.perimeter())
print("Width:", rectangle.width)
print("Height:", rectangle.height)

Rectangle 类有两个属性 width 和 height,以及两个方法 area 和 perimeter。通过创建 Rectangle 对象并调用对象的方法,可以计算矩形的面积和周长,以及访问矩形的宽度和高度。

4、继承

继承是面向对象编程中的一个重要概念,它允许一个类继承另一个类的属性和方法。通过继承,可以建立类之间的层次结构,从而实现代码的重用和扩展。

在 Python 中,使用 class ChildClass(ParentClass) 的形式来实现继承。子类(派生类)继承了父类(基类)的属性和方法,并可以定义自己的新属性和方法。

以下是一个继承的示例:

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

    def eat(self):
        print("Animal is eating.")

class Dog(Animal):
    def bark(self):
        print("Dog is barking.")

# 创建对象
animal = Animal("Generic Animal")
dog = Dog("Tommy")

# 调用继承的方法和子类的方法
animal.eat()
dog.eat()
dog.bark()

Animal 是一个基类,Dog 是一个派生类,它继承了 Animal 类的属性和方法。通过创建 Animal 和 Dog 对象,并调用它们的方法,可以看到派生类可以访问基类的方法,同时还可以定义自己的新方法。

5、多态

多态是面向对象编程中的另一个重要概念,它允许使用相同的接口来处理不同类型的对象,而不需要知道对象的具体类型。

在 Python 中,多态性是通过方法重写(Method Overriding)实现的。子类可以重写父类的方法,从而在相同的方法调用下表现出不同的行为。

以下是一个多态的示例:

class Shape:
    def area(self):
        pass

class Rectangle(Shape):
    def __init__(self, width, height):
        self.width = width
        self.height = height

    def area(self):
        return self.width * self.height

class Circle(Shape):
    def __init__(self, radius):
        self.radius = radius

    def area(self):
        return 3.14 * self.radius ** 2

# 创建对象
rectangle = Rectangle(5, 3)
circle = Circle(4)

# 调用多态的方法
shapes = [rectangle, circle]
for shape in shapes:
    print("Area:", shape.area())

Shape 是一个基类,Rectangle 和 Circle 是派生类。它们都实现了 Shape 类的 area 方法,但具体的实现不同。通过创建 Rectangle 和 Circle 对象,并将它们放入列表中,然后遍历列表并调用 area 方法,可以看到相同的方法调用根据对象的类型表现出不同的行为。


📢文章下方有交流学习区!一起学习进步!💪💪💪
📢首发CSDN博客,创作不易,如果觉得文章不错,可以点赞👍收藏📁评论📒
📢你的支持和鼓励是我创作的动力❗❗❗文章来源地址https://www.toymoban.com/news/detail-451174.html

到了这里,关于【数据分析之道-基础知识(十一)】面向对象的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包