Python 简明教程 --- 18,Python 面向对象

编程之家收集整理的这篇文章主要介绍了Python 简明教程 --- 18,Python 面向对象编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

微信公众号:码农充电站pro

个人主页:https://codeshellme.github.io

代码能借用就借用。

—— Tom Duff

目录

在这里插入图片描述

编程可分为面向过程编程面向对象编程,它们是两种不同的编程方式,当然背后的思维方式也是不同的。面向过程编程是一种传统的编程方式,面向对象编程是一个更高级的编程方式。

1,面向过程编程

面向过程编程(POP)的重点在于过程二字。

面向过程比较好理解,就是按照人们通常的思维方式,在做一件事情的时候,将这件事情划分为多个步骤,一步一步来做。

面向过程编程,就是在进行一个项目时,将这个项目分为多个小的步骤,一个步骤就是一个过程,将这些过程全部组织起来,就形成了完整的项目。

C 语言是典型的面向过程编程语言

比如,我们可以将我要去北京这件事情分为以下四个步骤:

  1. 去高铁站
  2. 购买高铁票
  3. 持票上高铁
  4. 坐高铁到北京

这里的每个步骤相当于一个过程,我们将这些过程封装成函数,然后,从前到后将这些函数组织起来,就完成了我要去北京这件事情。

我们将这个过程用简单的代码实现如下,将该代码保存在to_beijing.py 文件中:

#! /usr/bin/env python3

def to_high_station():
    print('我到了高铁站')

def buy_rail_tickets():
    print('我买了高铁票')

def geton_high_rail():
    print('我坐上了高铁')

def to_beijing():
    print('我到了北京')

if __name__ == '__main__':

    to_high_station()
    buy_rail_tickets()
    geton_high_rail()
    to_beijing()

在控制台执行命令,如下:

$ python3 to_beijing.py 
我到了高铁站
我买了高铁票
我坐上了高铁
我到了北京

2,面向对象编程

面向对象思想

面向对象编程(OOP)的重点在与对象二字,主要的编程思想是围绕对象展开。

在思考一个项目的时候,将项目中的重要点/关键点都设计成一个个的,每个类承担着不同的工作,不同的功能被归纳到不同的类中。然后,由类产生出对象,这些对象之间的相互作用,最终组成了一个完整的项目。

类与对象

面向对象编程中的两个非常重要概念是对象也是代码复用的一种机制。

前面我们讲到过,函数模块都是代码复用的机制。

代表一类有着相同特征事物,是一个抽象的概念。由同一个类产生的对象,有着相同的特性。比如人类都会行走,会使用工具,需要呼吸和喝水,这都是人类的共性。

对象产生,是一个类的实例,创建对象的过程,叫做类的实例化。对象是具体的,而不是抽象的。同一类的不同对象,也有不同的属性。比如人类,有不同的性别,姓名和年龄等,这都是人类的不同属性

设计模式是对面向对象编程的宝贵经验的归纳总结,让我们可以更方便的运用面向对象的思想来进行编程工作。

面向对象语言

Java 语言是完全的面向对象编程语言,因为所有的步骤都在中进行。

C++ 语言是半面向对象编程语言,它被称为带类的 C,即支持面向过程编程,又支持面向对象编程。

Python 语言是一门脚本语言,以简单优雅为设计理念,即可以面向过程编程,也可以面向对象编程,但不像C++ 语言那样有太多的复杂枯燥的概念,Python 语言更注重实用性。

面向对象三大特征

封装继承多态是面向对象的三大特征,这三种特征都是面向对象编程语言自身提供的机制,可以让我们更方便的进行面向对象程序设计:

  • 封装:让用户可以访问需要的方法禁止访问不必要的方法屏蔽了类内部的复杂性。
  • 继承:使得子类可以继承父类代码,也是一种代码复用手段,增强了类与类之间的逻辑结果关系。同时,继承也是多态的必要条件。
  • 多态:一个事物(对象)可以表现多种形态,多态是面向对象编程中,一个非常强大的特性。

面向对象编程

我们仍然以我要去北京这件事来说明,用面向对象编程是如何实现的。

面向对象编程的重点在于类的设计,如何将一个大的项目,拆分为不同的,必要的类。类的功能是单一的,而不是将不同的功能糅杂到一个类中。

首先,我们需要设计出一个,比如类名叫作SomeOne,这个至少需要有四项功能

  • 去高铁站
  • 购买高铁票
  • 持票上高铁
  • 坐高铁到北京

我们需要将这四项功能,写成四个方法,放在类SomeOne 中,代码如下:

#! /usr/bin/env python3

# 定义一个类
class SomeOne:

    # 构造函数
    def __init__(self,name):
        self.name = name

    def to_high_station(self):
        print('%s 到了高铁站' % self.name)

    def buy_rail_tickets(self):
        print('%s 买了高铁票' % self.name)

    def geton_high_rail(self):
        print('%s 坐上了高铁' % self.name)

    def to_beijing(self):
        print('%s 到了北京' % self.name)

if __name__ == '__main__':

    # 创建一个类的对象
    i = SomeOne('小明')

    i.to_high_station()
    i.buy_rail_tickets()
    i.geton_high_rail()
    i.to_beijing()

将该代码写在文件SomeOne.py 中,在控制台执行命令,如下:

$ python3 SomeOne.py 
小明 到了高铁站
小明 买了高铁票
小明 坐上了高铁
小明 到了北京

在上面的代码中,我们定义了一个名叫SomeOne 的类,其中包含了我们需要的四个方法,另外还有一个__init__方法,这是类的构造函数(后续我们会详细讲解)。

__main__ 代码块中,我们创建了SomeOne 类的对象i,并调用了该对象的四个方法

下一节,我们来详细介绍类与对象

(完。)


推荐阅读:

Python 简明教程 --- 13,Python 集合

Python 简明教程 --- 14,Python 数据结构进阶

Python 简明教程 --- 15,Python 函数

Python 简明教程 --- 16,Python 高阶函数

Python 简明教程 --- 17,Python 模块与包


欢迎关注作者公众号,获取更多技术干货。

码农充电站pro

总结

以上是编程之家为你收集整理的Python 简明教程 --- 18,Python 面向对象全部内容,希望文章能够帮你解决Python 简明教程 --- 18,Python 面向对象所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢寻找一群志同道合、互帮互助的学习伙伴,可以点击下方链接加入:
编程之家官方1群:1065694478(已满)
编程之家官方2群:163560250(已满)
编程之家官方3群:312128206

相关文章

猜你在找的Python相关文章

Python日期格式化方法 import datetime datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S&quo
什么是JSON JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度。 那么,JSON到底是什么? JSON就是一串字符串
html布局: 1 <div class="column"> 2 <div class="panel bl bar1"> 3 <d
方法一:使用相对于当前文件(源文件)的相对路径 使用 ../ 对于这个例子来说 ../ 把路径带到了项目根目录的下一级目录 1 <script src="../static/js/wo
一、fetch请求时,request.json能获取到数据,request.form获取不到数据 1 var data = {'name':'test'}; 2 3 f
Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Comp
描述一下问题背景: 前台封装一个json字符串给后台传输数据,后台的ajax获取请求之后把接收的数据显示到前台html表格上。 jsonify:这个方法可以把字典转化为json字符串 通过jsonif