zoukankan      html  css  js  c++  java
  • 面向对象引子

    描述两个角色:
     1 def hum(name,age,job):
     2     """这是代表一个人"""
     3     data = {
     4         'name':name,
     5         'age':age,
     6         'job':job
     7     }
     8 
     9     return data
    10 
    11 def dog(name,type):
    12     """这是代表一条旺财"""
    13     data ={
    14         'name':name,
    15         'type':type
    16     }
    17 
    18     return data
    生成两个实际对象:
    1 a = hum('gdr','22','it')
    2 b = dog('Fish','taidi')
    两个角色对象生成了,但是每个角色的功能不同,每个角色写一个功能函数,想执行哪个功能,直接调用:
     1 def walk(h):
     2     """人的特征"""
     3     print("Hum %s is walking..." %(h['name']))
     4 
     5 def run(d):
     6     """旺财的特征"""
     7     print("Dog %s is run..." %(d['name']))
     8 
     9 #调用
    10 walk(a)
    11 run(a)
    以上会出现对象功能混用的情况,改变函数,使其不一样的对象对应不同的功能:
     1 def hum(name,age,job):
     2     """这是代表一个人"""
     3     def walk(h):
     4         print("Hum %s is walking..." % (h['name']))
     5     data = {
     6         'name':name,
     7         'age':age,
     8         'job':job,
     9         'walk':walk
    10     }
    11 
    12     return data
    13 
    14 def dog(name,type):
    15     """这是代表一条旺财"""
    16     def run(d):
    17         print("Dog %s is run..." % (d['name']))
    18     data ={
    19         'name':name,
    20         'type':type,
    21         'run':run
    22     }
    23     return data
    24 
    25 a = hum('gdr','22','it')
    26 b = dog('Fish','taidi')
    27 
    28 print(a['walk'](a))
    
    
    
     


  • 相关阅读:
    树的遍历
    字符串转化到实数
    redis笔记_源码_跳表skiplist
    《parsing techniques》中文翻译和正则引擎解析技术入门
    sublime3 Package Control和 中文安装
    python基础——字典dict
    python基础1
    pandas入门总结1
    numpy入门总结2
    numpy入门总结1
  • 原文地址:https://www.cnblogs.com/jesse-gong/p/7800444.html
Copyright © 2011-2022 走看看