码迷,mamicode.com
首页 > 其他好文 > 详细

LF 模块三

时间:2018-07-25 01:08:31      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:查看类   分类   ati   ==   简单   不同   self   扩展性   strip()   

面向过程

核心是过程二在,过程指的是解决问题的步骤 类似于设计一条流水线。机械式的思维方式

优点:把复杂的问题流程化,进而简单化 

缺点:可扩展性差

应用场景:功能一旦实现基本不需要扩展的情况,自动部署脚本之类

import json

def inter_active():
    name = input("name>>:").strip()
    pwd = input("password>>:").strip()
    return {
        "name":name,
        "password":pwd
    }


def check(user_info):
    is_valid = True
    if len(user_info["name"]) == 0:
        print("用户名不能为空")
        is_valid = False
    if len(user_info["password"]) < 6:
        print("密码不能少于6位")
        is_valid = False
    return {
        "is_valid":is_valid,
        "user_info":user_info
    }


def register(check_info):
    if check_info["is_valid"]:
        with open("db.json","w",encoding="utf-8") as f:
            json.dump(check_info["user_info"],f)

def main():
    user_info = inter_active()
    check_info = check(user_info)
    register(check_info)

if __name__ == __main__:
    main()

 

面向对象

对象:在python中,一切皆对象 对象就是特征与技能(属性和行为)的结合体

优点:可扩展性强,

缺点:编程复杂度高

应用场景:用户需求经常变化

 

类就是一系列对象相似的特征与技能的结合体 

站在不同角度,得到的分类是不一样的

 

在现实世界中:一定现有对象,后有类

在程序中:一定先定义类,后调用类来产生对象

 

定义一个类(注意类名首字母大写):

#类的定义:
class Luffy_Student:
    school = "luffycity"
    def learn(self):
        print("is learning")

    def eat(self):
        print("is eating|")

    def sleep(self):
        print("is sleeping")

#调用
stu1 = Luffy_Student()
stu2 = Luffy_Student()
stu3 = Luffy_Student()

 

与函数不同,函数声明过程中并不执行,只有在调用时才能执行

类在定义阶段就会执行

通常情况下,类里面定义了行为和属性,但是在python中一般也可以加入其他代码

类内部定义的变量叫数据属性,函数叫函数属性

针对类的属性,python中有专门的访问语法点(.)

class Luffy_Student:
    school = "luffycity"
    def learn(self):
        print("is learning")

    def eat(self):
        print("is eating|")
#查看类的名称空间
print(Luffy_Student.__dict__)
print(Luffy_Student.__dict__["school"])

#
print(Luffy_Student.school) #等同于在名称空间里查找Luffy_Student.__dict__["school"]

#
Luffy_Student.country = "China"

#
del Luffy_Student.country

#
Luffy_Student.school = "Luffycity123"

#类的用法,点(.)方法,属性
#类的两大操作 第一是 
#类加()是实例化一个对象。
#第一大类用处对属性操作,第二大操作是生成一个个对象

 

LF 模块三

标签:查看类   分类   ati   ==   简单   不同   self   扩展性   strip()   

原文地址:https://www.cnblogs.com/alexstraze/p/9363275.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!