阿布云

你所需要的,不仅仅是一个好用的代理。

Python面向对象基础:自动化系列(一)

阿布云 发表于

6.png

1.面向對象基础概述

  • 面向过程 :
  • 根据业务逻辑从上到下垒代码(如果程序修改,对于依赖的过程都需要进行修改。)
  • 函数式 :
  • 将某功能代码封装到函数中,如后便无需重复编写,仅需要调用函数即可
  • 面向对象 :
  • 世界万物,皆可分类。
  • 世界万物,皆为对象。
  • 只要是对象,就肯定属于某种品类。
  • 只要是对象,就肯定有属性(名称或功能)
  • 对函数进行分类和封装,让开发"更快、更好、更强"

无论用什么形式来编程,我们都要明确记住以下原则:

1.写重复代码是非常低级的行为

2.你写的代码需要经常变更

1.面向对象编程方式实现监控报警(最容易被初学者接受):

while True

 ifcpu利用率 > 90%:

 #发送邮件提醒

连接邮箱服务器

发送邮件

关闭连接

 

if  硬盘使用空间 > 90%:

#发送邮件提醒

连接邮箱服务器

发送邮件

关闭连接

 

if 内存占用 > 80%:

#发送邮件提醒

连接邮箱服务器

发送邮件

关闭连接

2.随着时间的推移,开始使用了函数式编程,增强代码的重用性和可读性

def 发送邮件(内容)

#发送邮件提醒

连接邮箱服务器

发送邮件

关闭连接

 

while True:

ifcpu利用率 > 90%:

发送邮件('CPU报警')

 

if 硬盘使用空间 > 90%:

发送邮件('硬盘报警')

 

if 内存占用 > 80%:

发送邮件('内存报警')

3.今天我们来使用面向对象编程(OOP面向对象程序设计)

1.1创建类和对象

面向对象编程是一种编程方式,此变成方式和落地需要使用"类(class)"和"对象(object)"来实现,所以,面向对象编程其实就是对"类"和"对象"的使用。

  • 类就是一个模板,模板里可以包含多个函数,函数里实现具体功能(把一个类变成具体的过程叫做实例化。)
  • 对象则是根据模板创建的实例,通过实例对象可以执行类中的函数

 #class:关键字,表示要创建类

#F1:类的名称

#self:形式参数(必填)

 

# 创建类

classF1:

 

# 创建类中的函数

defbar(self):

print("bar") #可以是功能模块

 

# 根据类F1创建对象

obj obj=F1() #创建对象,类名称后加括号即可

 

这么说可能有一些抽象,我们来看一个具体的例子:

# 创建类

classF1:

 

defbar(self):

print("bar")

 

def Hello(self,name):

self.name=name

print ("i am %s" %self.name)

 

# 根据类F1创建对象obj

obj=F1()

obj.bar()

#执行bar方法

obj.Hello("xuliangwei") #执行hello方法

你在这里是不是有疑问了?使用函数式编程和面向对象编程方式来执行一个“方法”时函数要比面向对象简便

面向对象:【创建对象】【通过对象执行方法】

函数编程:【执行函数】

观察上述对比答案则是肯定的,然后并非绝对,场景的不同适合其的编程方式也不同。

总结:函数式的应用场景 -->各个函数之间是独立且无共用的数据