zoukankan      html  css  js  c++  java
  • python-面向对象编程设计与开发

    编程范式

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

    2、编程范式有两种

      1、面向过程编程

      2、面向对象编程

    面向过程编程

    什么是面向过程编程?

    过程——解决问题的步骤

    要解决一个大的问题

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

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

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

    有什么优点和缺点?

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

    缺点:可扩展性差

    写代码:

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

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

    增加输入邮箱注册

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

    应用场景?

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

    面向对象编程

    什么是面向对象编程?

    有什么优点和缺点?

    应用场景?

  • 相关阅读:
    sql把字符数组转换成表 :把字符串1,2,3变成表里的行数据
    Excel中如何把时间转化成文本
    网页前段常用代码及网页自适应
    sql存储过程几个简单例子(一)
    Web调用安卓,苹果手机摄像头,本地图片和文件
    JQuery-方法
    JQuery-选择器
    AJAX-JSON
    Ajax-验证码
    DOM-XML(解析与创建)
  • 原文地址:https://www.cnblogs.com/AYxing/p/8978012.html
Copyright © 2011-2022 走看看