python-面向对象编程设计与开发
编程范式
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-面向对象编程设计与开发相关推荐
- 第五章面向对象编程设计与开发
5.1 什么是面向对象的程序设计 面向过程的程序设计 优点:复杂的问题流程化,进而简单化 缺点:一套流水线或者流程就是用来解决一个问题,扩展性极差. 应用场景:面向过程的程序设计思想一般用于那些功能一 ...
- python由谁设计并领导开发_Python全栈开发之路 【第七篇】:面向对象编程设计与开发(1)...
本节内容 一.编程范式 编程指的是写程序.敲代码,就是指程序员用特定的语法.数据结构和算法编写的代码,目的是来告诉计算机如何执行任务的. 在编程的世界里最常见的两大流派是:面向过程与面向对象.&quo ...
- python编程基础是什么-Python面向对象编程基础解析(一)
1.什么是面向对象 面向对象(oop)是一种抽象的方法来理解这个世界,世间万物都可以抽象成一个对象,一切事物都是由对象构成的.应用在编程中,是一种开发程序的方法,它将对象作为程序的基本单元. 2.面向 ...
- 【Python基础】Python 面向对象编程(上篇)
我的施工计划图 已完成专题包括: 1我的施工计划 2数字专题 3字符串专题 4列表专题 5流程控制专题 6编程风格专题 7函数使用专题 今天是面向对象编程的上篇:基础专题 Python 面向对象编程 ...
- [转载] python面向对象编程实例
参考链接: Python面向对象编程 案例介绍 本案例设计的是:为购置的新房添置家具,在本案例中,我们需要给出指定的房屋和面积,在为其添置家具的过程中,各家具的面积之和不能超过房屋面积的总和.房屋及家 ...
- python面向对象编程实例pdf_Python面向对象编程指南 ([美]StevenFLott洛特) 中文pdf扫描版[52MB]...
Python是一种面向对象.解释型的程序设计语言,它已经被成功应用于科学计算.数据分析以及游戏开发等诸多领域. Python面向对象编程指南深入介绍Python语言的面向对象特性,全书分3个部分共18 ...
- 十四、理解nn.module方法——学习python面向对象编程(一)
起因 在(十二)中说到pytorch中创建神经网络的两种方法:一个是Sequential类(这也是一种继承父类属性和方法并可对其方法重构的子类),另一个是自己编写代码,继承nn.module类,对其内 ...
- Python面向对象编程随笔
Python面向对象编程 参考教程:https://www.bilibili.com/video/av8475172?p=1 面向过程与面向对象 面向过程:自顶向下,用于解决计算问题或实现某种算法,与 ...
- 《Python面向对象编程》读后感
[b]一.Python简介[/b] 创始人? 吉多·范罗苏姆(Guido van Rossum)(社区人称仁慈的独裁者) 创建原因? 1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决 ...
- Python零基础速成班-第9讲-Python面向对象编程(上),对象和类、初始化、继承、重写、多态、类方法、组合
Python零基础速成班-第9讲-Python面向对象编程(上),对象和类.初始化.继承.重写.多态.类方法.组合 学习目标 修饰器 面向对象编程:对象和类.初始化.继承.重写.多态.类方法.组合 课 ...
最新文章
- django--静态文件路径和模板路径配置
- 【深度学习】——纠错error: Unable to find vcvarsall.bat:关于安装pycocotools
- java虚拟机类加载机制浅谈_浅谈Java虚拟机(三)之类加载机制
- 桌面版应用_类Jupyter notebook编辑器桌面版应用nteract
- 汽车车灯有必要改造成氙气大灯吗?
- 计算机维保资质,电脑维保属于技术合同吗?
- CentOS 7.6 安装 nginx,配置端口访问网站,切换root目录
- Python进阶-----类的内置方法__getattribute__
- 学校计算机房的制度,小学计算机房管理制度
- MacBook 如何使用两个微信(微信双开)
- chrome浏览器如何设置黑色背景
- 【办公软件】Win10自带的邮件客户端配置腾讯企业邮箱账号详解
- 数据产品经理之数据准确性及测试必要性
- HTML+CSS大风车及十字架的实现
- 卷宗怎么做_卷宗怎么读
- QML state详解
- 疯狂Java讲义中的程序,使用代理服务器来获取网上的资源
- 基于Proteus学习单片机系列(七)——实时时钟DS1302
- 店铺定位目的,品牌传播,产品、人群、价格定位
- 【机器学习算法】感知机模型
热门文章
- php调用swf文件上传,swfupload-jquery-plugin AJAX+PHP 文件上传
- python env_#!/usr/bin/env python 有什么用?
- 怎么知道跟交换机互联的交换机_怎么选择POE交换机
- 股票实例_注意了!手中的股票涨停,但是却封不住反复打开,说明了什么?看懂持股不慌...
- python 字体_python docx字体设置
- python中自带的模块_python中的模块详解
- string index out of range_Java 12 骚操作, String居然还能这样玩!
- python和c#哪个简单-最近学习 Python 的一些感触 (对比 C#)
- webgl 基础渲染demo_WebGL + ThreeJS 实现实时水下焦散 Part 1
- 苹果更新未知错误17_iOS 13 新功能,静音未知来电