怎么使用python面向对象编程

  介绍

本篇文章给大家分享的是有关怎么使用python面向对象编程,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

类是面向对象程序设计的一部分。面向对象程序设计或者简称为OOP致力于创建可重用代码块称之为类。当你想在你的程序中使用类时,你会从类中创建一个对象,这也是面向对象一词的由来.Python并不总是面向对象的,但是你会在你的项目中用到对象。为了理解类,你需要理解面向对象的一些基础术语。

<强>常用术语

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

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

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

方法:方法。类中的函数,由行为组成。

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

近距离观察火箭类

我们已经了解到一些类的基本术语,让我们回头再分析一下上节提到的火箭类。

__init__()方法

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

class 火箭():   ,,,#,Rocket  simulates  a  Rocket  ship  for  a 游戏,   ,,,#,一、a  physics 仿真。   ,,,,   ,,,def  __init__(自我):   ,,,,,,,#,Each  rocket  has  an  (x, y),位置。   ,,,,,,,self.x =0   ,,,,,,,self.y =, 0

第一行展示了类是如何创建的。关键字类告诉Python准备定义一个类,类名的命名规则和变量的相同,但是Python中有一个约定好的规则,类名必须是驼峰式的。也即每个单词的开头必须是大写的,不允许下划线的出现。类名后紧跟一对圆括号,目前为止圆括号里都是空的,接下来的学习中,其中可能会包含一个类。这个类是新类基于的类。

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

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

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

一个简单的方法

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

class 火箭():   ,,,#,Rocket  simulates  a  Rocket  ship  for  a 游戏,   ,,,#,一、a  physics 仿真。   ,,,,   ,,,def  __init__(自我):   ,,,,,,,#,Each  rocket  has  an  (x, y),位置。   ,,,,,,,self.x =0   ,,,,,,,self.y =0   ,,,,,,,   ,,,def  move_up(自我):   ,,,,,,,#,Increment 从而y-position  of 从而火箭。   ,,,,,,,self.y  +=,

1方法就是类中的函数。因此你可以在方法中做任何函数能做的事。

默认情况下,每个函数都需要接受一个参数:自我。它是对调用这个方法的对象的引用.self参数能让你访问到调用对象的属性。在这个例子中,用自我来访问火箭对象的y属性。这个方法被调用一次,对象的y属性就增加1。为了更近一步了解方法的运行过程,仔细阅读下述代码,并观察它们的输出。

class 火箭():   ,,,#,Rocket  simulates  a  Rocket  ship  for  a 游戏,   ,,,#,一、a  physics 仿真。   ,,,,   ,,,def  __init__(自我):   ,,,,,,,#,Each  rocket  has  an  (x, y),位置。   ,,,,,,,self.x =0   ,,,,,,,self.y =0   ,,,,,,,   ,,,def  move_up(自我):   ,,,,,,,#,Increment 从而y-position  of 从而火箭。   ,,,,,,,self.y  +=1      #,Create  a  Rocket 对象,以及have  it  start 用move 。   my_rocket =,火箭()   print (“Rocket 高度:“,,my_rocket.y)      my_rocket.move_up ()   print (“Rocket 高度:“,,my_rocket.y)

创建多个对象

怎么使用python面向对象编程