Python面向对象基础篇(一)
- 前言
- 一、什么是对象?
- (1)对象:独立性、功能性、交互性
- (2)万物皆对象,均继承于Object类
- (3)OOP:面向对象编程,本质含义在于复用代码,在较大规模或复杂项目中有用,提高写作产量
- (4)面向对象和面向过程的对比
- 二、面向对象术语
- (1)类Class 对象 Object
- (2)类对象、实例对象
- (3)其他术语:
- 三、实例
前言
Python中一切都是对象,函数是对象,类是对象,变量时对象,字符串是对象,列表和元组也是对象,他的所有一切都是对象。
一、什么是对象?
(1)对象:独立性、功能性、交互性
独立性:对象都存在清晰的边界,重点在于划分边界
功能性:对象都能表现出一些功能、操作或行为
交互性:对象之间存在交互,如:运算和继承
(2)万物皆对象,均继承于Object类
- Python语言中所以数据类型都是对象、函数是对象、模块是对象
- Python所有类都继承于最基础类object
- Python语言中数据类型的操作功能都是类方法的体现
(3)OOP:面向对象编程,本质含义在于复用代码,在较大规模或复杂项目中有用,提高写作产量
OOP:面向对象编程,一种编程思想,重点在于高抽象的复用代码
OOP把对象当做程序的基本单元,对象包含数据和操作数据的函数
OOP本质是把问题解决抽象为以对象为中心的计算机程序
(4)面向对象和面向过程的对比
**面向过程:**以解决问题的过程步骤为核心编写程序的方式
**面向对象:**以问题对象构建和应用为核心编程程序的方式
所有OOP能解决的问题,面向过程都能解决
二、面向对象术语
(1)类Class 对象 Object
类是一种抽象,一般不使用类进行运算,通过类来生成对象进行运算。对象在面向对象编程中,相当于程序的变量。实例化就是从类到对象的过程。对象是根据模板【类】生成的实际的功能。
属性:存储数据的变量
方法:操作数据的函数
对象:类对象、实例对象
(2)类对象、实例对象
类对象 :Class object,维护每个Python类基本信息的数据结构
实例对象:instance object,Python类实例后产生的对象,简称:对象
这是一组概念,类对象全局只有一个,实例对象可以生成多个
(3)其他术语:
继承: 基类、派生类、子类、父类、超类、重载
命名空间: 程序元素作用域的表达
构造和析构: 生成对象和删除对象
三、实例
要求:
- 有三个商品:电脑、电视、冰箱
- 每个商品都有一个原始售价和一个折扣售价
- 求三个商品原始售价和折扣售价的和
class Product():
def __init__(self,name):
self.name = name
self.label_price = 0
self.real_price = 0
c = Product("电脑")
d = Product("打印机")
e = Product("投影仪")
c.label_price,c.real_price = 10000,8000
d.label_price,d.real_price = 5000,4000
e.label_price,e.real_price = 7000,6000
s1,s2 = 0,0
for i in [c,d,e]:
s1+=i.label_price
s2+=i.real_price
print(s1,s2)
输出结果: