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

    应用场景?

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

    面向对象编程

    什么是面向对象编程?

    有什么优点和缺点?

    应用场景?

  • 相关阅读:
    打造基于CentOS7的xfce最简工作环境
    Linux下C程序的编辑,编译和运行以及调试
    修正 XE6 TListView 上方 SearchBok 右边的清除钮显示
    TabControl 显示彩色的图示 (XE6 Firemonkey)
    TSwitch 中文简繁显示支持(XE6 Android)
    改变 TMemo 的背景颜色 (Firemonkey)
    修正 XE5 Android 键盘三个问题
    Delphi 收藏
    展示 Popup 的使用方法
    ListView 下拉更新 (支持 Android)
  • 原文地址:https://www.cnblogs.com/AYxing/p/8978012.html
Copyright © 2011-2022 走看看