知行编程网知行编程网  2022-11-06 06:00 知行编程网 隐藏边栏  0 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python面向对象编程详解的相关知识,包括python django,以及python支持面向对象吗这些编程知识,希望对大家有参考作用。

Python 面向对象编程解释

类是面向对象编程的一部分。面向对象编程或简称 OOP 侧重于创建称为类的可重用代码块。当你想在你的程序中使用一个类时,你从这个类中创建一个对象,这就是面向对象这个术语的来源。 Python 并不总是面向对象的,但你将在项目中使用对象。为了理解类,你需要了解一些基本的面向对象术语。


常用术语

班级:班级。类是定义已建立模型的属性和行为的代码块的主体。这个模型可以来自现实世界,也可以是虚拟游戏等。

属性:属性。是信息的集合。在一个类中,属性通常是一个变量。

行为:行为。行为在类中定义,是方法的一部分。即类中定义的部分函数。

method:方法。类中的函数,由 behavior 组成。

对象:对象。对象是类的实例。一个对象包含类中所有属性的值。你可以为一个类创建任意数量的对象。

近距离观察 Rocket 类

现在我们已经了解了一些基本的类术语,让我们回过头来分析上一节中提到的 Rocket 类。

__init__() 方法

定义一个初始代码块,如下所示:

class Rocket():
    # Rocket simulates a rocket ship for a game,
    #  or a physics simulation.
    
    def __init__(self):
        # Each rocket has an (x,y) position.
        self.x = 0
        self.y = 0

第一行显示了类是如何创建的。关键字 class 告诉 Python 定义一个类。类名的命名规则与变量的命名规则相同,但 Python 中有一个约定,即类名必须是驼峰式。即每个单词的开头必须大写,不允许下划线。类名后跟一对括号。到目前为止,括号是空的。在下一个研究中,它可能包含一个类。这个类是新类所基于的类。

前后有两个下划线的函数是 Python 内置的专用函数。 __init__() 函数是一个特殊函数。它在创建类的对象时自动执行此操作。我们可以称它为初始化函数,在使用对象之前初始化一些必要的属性。在此示例中,__init__() 函数初始化 x 和 y 属性。

关键字 self 可能有点难以理解。 “自我”一词指的是当前对象。当你创建一个类时,它可以访问该类的任何指定属性。基本上,类中的所有函数都需要 self 对象作为第一个参数,因此它们可以访问类中的属性。

现在,让我们看看类中的方法吧!

一个简单的方法

下述代码在 Rocket 类中定义了一个方法。

class Rocket():
    # Rocket simulates a rocket ship for a game,
    #  or a physics simulation.
    
    def __init__(self):
        # Each rocket has an (x,y) position.
        self.x = 0
        self.y = 0
        
    def move_up(self):
        # Increment the y-position of the rocket.
        self.y += 1

方法是类中的函数。因此,你可以在函数可以执行的方法中执行任何操作。

默认情况下,每个函数都有一个参数: self 。它是对调用此方法的对象的引用。 self 参数使你可以访问调用对象的属性。在此示例中,self 用于访问 Rocket 对象的 y 属性。调用此方法后,对象的 y 属性会增加 1。要仔细了解这些方法的工作原理,请仔细阅读以下代码并观察其输出。

class Rocket():
    # Rocket simulates a rocket ship for a game,
    #  or a physics simulation.
    
    def __init__(self):
        # Each rocket has an (x,y) position.
        self.x = 0
        self.y = 0
        
    def move_up(self):
        # Increment the y-position of the rocket.
        self.y += 1

# Create a Rocket object, and have it start to move up.
my_rocket = Rocket()
print("Rocket altitude:", my_rocket.y)

my_rocket.move_up()
print("Rocket altitude:", my_rocket.y)

创建多个对象

面向对象编程的一个重要目标是创建可重用的代码。编写完类后,你可以创建任意数量的对象。通常,类被放入一个单独的文件中,并在需要时导入到程序中。因此,你可以创建一个类库并在不同的程序中重用这些类。

在一个类上创建多个对象,示例如下:

class  Rocket():
         # Rocket simulates a rocket ship for a game,# Rocket 
    #  or a physics simulation.
    
    def __init__(self):
        # Each rocket has an (x,y) position.
        self.x = 0
        self.y = 0
        
    def move_up(self):
        # Increment the y-position of the rocket.
        self.y += 1
        
# Create a fleet of 5 rockets, and store them in a list.
my_rockets = []
for x in range(0,5):
    new_rocket = Rocket()
    my_rockets.append(new_rocket)

# Show that each rocket is a separate object.
for rocket in my_rockets:
    print(rocket)

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享