函数式编程和面向对象对比
a. round 1 请开发一个消息提醒的功能(邮件/短信/微信)
defemail(em,text):"""发送邮件
:return:"""
print(em,text)defmsg(tel,text):"""发送短信
:return:"""
print(tel,text)defwechat(num,text):"""发送微信
:return:"""
print(num,text)#编写功能:假设用户购买课程,然后给alex发送提醒;
if 1==1:
msg('188888888','张进购买了一个学位课')
email('alex@sb.com','张进购买了一个学位课')
wechat('xxxx','张进购买了一个学位课')
函数
classMessage:defemail(self, em, text):"""发送邮件
:return:"""
print(em,text)defmsg(self, tel, text):"""发送短信
:return:"""
print(tel,text)defwechat(self, num, text):"""发送微信
:return:"""
print(num,text)#编写功能:假设用户购买课程,然后给alex发送提醒;
if 1==1:
obj=Message()
obj.email('alex@sb.com', '张进购买了一个学位课')
obj.msg('188888888','张进购买了一个学位课')
obj.wechat('xxxx','张进购买了一个学位课')
面向对象
初步对比:
函数:定义简单/调用简单
面向对象:定义复杂/调用复杂/ 好处:归类,将某些类似的函数写在一起
总结:
1.函数式编程可能会比面向对象好.
2.python中支持的两种编程方式
3.面向对象方式格式
定义: class 类名 定义了一个类
def 函数名(self) 在类中编写了一个"方法"
pass
调用:
x1 = 类名() 创建了一个对象/实例化了一个对象
x1.函数名() 通过对象调用其中一个方法
classAccount:deflogin(self):
user= input('请输入用户名:')
pwd= input('请输入密码:')if user == 'alex' and pwd == 'sb':print('登录成功