编程范式

1、对不同类型的任务,所采取不同的解决问题的思路。

2、编程范式有两种

  1、面向过程编程

  2、面向对象编程

面向过程编程

什么是面向过程编程?

过程——解决问题的步骤

要解决一个大的问题

1、先把大问题拆分成若干小问题或子过程。

2、然后子过程再拆分成小问题或子过程

3、直到小问题可以在一个小步骤的范围内可以解决。

有什么优点和缺点?

优点:把复杂的问题流程化,编程难度低。

缺点:可扩展性差

写代码:

写一个简单的用户注册程序

# 1 写一个用户注册程序
# 面向过程编程方法:
# 1、用户输入账号密码
# 2、用户输入合法性检测
# 3、写入输入库
# 注意:
# 进阶:当需要增加邮箱注册功能要怎样改?
import jsondef interactive():  # step 1user = input('>>').strip()psw = input('>>').strip()return {'name': user,'pwd': psw}def check(user_info):  # step 2is_value = Trueif len(user_info['name']) == 0:print('用户名不能为空')is_value = Falseif len(user_info['pwd']) < 6:print('密码不能小于6位')is_value = Falsereturn {'is_value': is_value,'user_info': user_info}def register(check_info):  # step 3if check_info['is_value']:with open('json.db', 'w', encoding='utf-8')as f:json.dump(check_info['user_info'], f)def main():user_info = interactive()  # step 1check_info = check(user_info)  # step 2register(check_info)  # step 3if __name__ == '__main__':main()

View Code

增加输入邮箱注册

# 1 写一个用户注册程序
# 面向过程编程方法:
# 1、用户输入账号密码
# 2、用户输入合法性检测
# 3、写入输入库
# 注意:
# 进阶:当需要增加邮箱注册功能要怎样改?
import json,redef interactive():  # step 1user = input('>>').strip()psw = input('>>').strip()email=input('>>').strip()return {'name': user,'pwd': psw,'email':email}def check(user_info):  # step 2is_value = Trueif len(user_info['name']) == 0:print('用户名不能为空')is_value = Falseif len(user_info['pwd']) < 6:print('密码不能小于6位')is_value = Falseif not re.search(r'@.*?\.com$',user_info['email']):print('邮箱格式错误')is_value=Falsereturn {'is_value': is_value,'user_info': user_info}def register(check_info):  # step 3if check_info['is_value']:with open('json.db', 'w', encoding='utf-8')as f:json.dump(check_info['user_info'], f)def main():user_info = interactive()  # step 1check_info = check(user_info)  # step 2register(check_info)  # step 3if __name__ == '__main__':main()

View Code

应用场景?

功能一旦实现,改动很少的场景。自动部署脚本等场景。

面向对象编程

什么是面向对象编程?

有什么优点和缺点?

应用场景?

转载于:https://www.cnblogs.com/AYxing/p/8978012.html

python-面向对象编程设计与开发相关推荐

  1. 第五章面向对象编程设计与开发

    5.1 什么是面向对象的程序设计 面向过程的程序设计 优点:复杂的问题流程化,进而简单化 缺点:一套流水线或者流程就是用来解决一个问题,扩展性极差. 应用场景:面向过程的程序设计思想一般用于那些功能一 ...

  2. python由谁设计并领导开发_Python全栈开发之路 【第七篇】:面向对象编程设计与开发(1)...

    本节内容 一.编程范式 编程指的是写程序.敲代码,就是指程序员用特定的语法.数据结构和算法编写的代码,目的是来告诉计算机如何执行任务的. 在编程的世界里最常见的两大流派是:面向过程与面向对象.&quo ...

  3. python编程基础是什么-Python面向对象编程基础解析(一)

    1.什么是面向对象 面向对象(oop)是一种抽象的方法来理解这个世界,世间万物都可以抽象成一个对象,一切事物都是由对象构成的.应用在编程中,是一种开发程序的方法,它将对象作为程序的基本单元. 2.面向 ...

  4. 【Python基础】Python 面向对象编程(上篇)

    我的施工计划图 已完成专题包括: 1我的施工计划 2数字专题 3字符串专题 4列表专题 5流程控制专题 6编程风格专题 7函数使用专题 今天是面向对象编程的上篇:基础专题 Python 面向对象编程 ...

  5. [转载] python面向对象编程实例

    参考链接: Python面向对象编程 案例介绍 本案例设计的是:为购置的新房添置家具,在本案例中,我们需要给出指定的房屋和面积,在为其添置家具的过程中,各家具的面积之和不能超过房屋面积的总和.房屋及家 ...

  6. python面向对象编程实例pdf_Python面向对象编程指南 ([美]StevenFLott洛特) 中文pdf扫描版[52MB]...

    Python是一种面向对象.解释型的程序设计语言,它已经被成功应用于科学计算.数据分析以及游戏开发等诸多领域. Python面向对象编程指南深入介绍Python语言的面向对象特性,全书分3个部分共18 ...

  7. 十四、理解nn.module方法——学习python面向对象编程(一)

    起因 在(十二)中说到pytorch中创建神经网络的两种方法:一个是Sequential类(这也是一种继承父类属性和方法并可对其方法重构的子类),另一个是自己编写代码,继承nn.module类,对其内 ...

  8. Python面向对象编程随笔

    Python面向对象编程 参考教程:https://www.bilibili.com/video/av8475172?p=1 面向过程与面向对象 面向过程:自顶向下,用于解决计算问题或实现某种算法,与 ...

  9. 《Python面向对象编程》读后感

    [b]一.Python简介[/b] 创始人? 吉多·范罗苏姆(Guido van Rossum)(社区人称仁慈的独裁者) 创建原因? 1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决 ...

  10. Python零基础速成班-第9讲-Python面向对象编程(上),对象和类、初始化、继承、重写、多态、类方法、组合

    Python零基础速成班-第9讲-Python面向对象编程(上),对象和类.初始化.继承.重写.多态.类方法.组合 学习目标 修饰器 面向对象编程:对象和类.初始化.继承.重写.多态.类方法.组合 课 ...

最新文章

  1. django--静态文件路径和模板路径配置
  2. 【深度学习】——纠错error: Unable to find vcvarsall.bat:关于安装pycocotools
  3. java虚拟机类加载机制浅谈_浅谈Java虚拟机(三)之类加载机制
  4. 桌面版应用_类Jupyter notebook编辑器桌面版应用nteract
  5. 汽车车灯有必要改造成氙气大灯吗?
  6. 计算机维保资质,电脑维保属于技术合同吗?
  7. CentOS 7.6 安装 nginx,配置端口访问网站,切换root目录
  8. Python进阶-----类的内置方法__getattribute__
  9. 学校计算机房的制度,小学计算机房管理制度
  10. MacBook 如何使用两个微信(微信双开)
  11. chrome浏览器如何设置黑色背景
  12. 【办公软件】Win10自带的邮件客户端配置腾讯企业邮箱账号详解
  13. 数据产品经理之数据准确性及测试必要性
  14. HTML+CSS大风车及十字架的实现
  15. 卷宗怎么做_卷宗怎么读
  16. QML state详解
  17. 疯狂Java讲义中的程序,使用代理服务器来获取网上的资源
  18. 基于Proteus学习单片机系列(七)——实时时钟DS1302
  19. 店铺定位目的,品牌传播,产品、人群、价格定位
  20. 【机器学习算法】感知机模型

热门文章

  1. php调用swf文件上传,swfupload-jquery-plugin AJAX+PHP 文件上传
  2. python env_#!/usr/bin/env python 有什么用?
  3. 怎么知道跟交换机互联的交换机_怎么选择POE交换机
  4. 股票实例_注意了!手中的股票涨停,但是却封不住反复打开,说明了什么?看懂持股不慌...
  5. python 字体_python docx字体设置
  6. python中自带的模块_python中的模块详解
  7. string index out of range_Java 12 骚操作, String居然还能这样玩!
  8. python和c#哪个简单-最近学习 Python 的一些感触 (对比 C#)
  9. webgl 基础渲染demo_WebGL + ThreeJS 实现实时水下焦散 Part 1
  10. 苹果更新未知错误17_iOS 13 新功能,静音未知来电