• 面向对象设计1


    # dog1 = {
    #  'name': '林海峰',
    #  'gender': '公',
    #  'type': 'dog',
    # }
    #
    # dog2 = {
    #  'name': '元昊',
    #  'gender': '公',
    #  'type': 'dog',
    # }
    #
    # person1 = {
    #  'name': 'mike',
    #  'gender': 'man',
    #  'type': '人',
    # }
    #
    # def jiao(dog):
    #  if dog['type'] == 'dog':
    #     print('一条[%s]狗狗正在汪汪汪的叫唤!' % dog['name'])
    #
    # def run(dog):
    #  if dog['type'] == 'dog':
    #     print('一条[%s]狗狗正在用四条腿使劲的奔跑!' % dog['type'])
    #
    # jiao(dog1)
    # run(dog1)
    # jiao(dog2)
    # run(dog2)
    # jiao(person1) # 人的介绍也可以直接调用狗定义的函数方法,防止这样的现象可以在每个函数里加上判断,但这样已经是在写重复的代码了
    
    
    # def dog():
    #  '''把狗的函数方法及狗的介绍都放在一个函数里,但此时狗的介绍已经写死了'''
    #  def jiao(dog):
    #     print('一条[%s]狗狗正在汪汪汪的叫唤!' % dog['name'])
    #
    #  def run(dog):
    #     print('一条[%s]狗狗正在用四条腿使劲的奔跑!' % dog['type'])
    #
    #  dog1 = {
    #     'name': '林海峰',
    #     'gender': '公',
    #     'type': '哈士奇',
    #     'shuxing': 'dog',
    #     'jiao': jiao,
    #     'run': run,
    #  }
    #
    #  return dog1
    #
    # d1 = dog()
    # print(d1)
    # d1['jiao'](d1)
    # d1['run'](d1)
    
    
    def dog(dog_l):
       '''dog函数接收一个狗介绍字典,然后加一个函数为接收的狗介绍字典加上两个键值对,分别对应两个狗函数方法'''
       def jiao(dog):
          print('一条[%s]狗狗正在汪汪汪的叫唤!' % dog['name'])
    
       def run(dog):
          print('一条[%s]狗狗正在用四条腿使劲的奔跑!' % dog['type'])
    
       def dog_name():
          dog_l['jiao'] = jiao
          dog_l['run'] = run
          return dog_l
       return dog_name()
    
    d2 = dog({
       'name': '林海峰',
       'gender': '',
       'type': '哈士奇',
       'shuxing': 'dog',
    })
    print(d2)
    d2['jiao'](d2)
    d2['run'](d2)
    while True: print('studying...')
  • 相关阅读:
    前端好用js库
    springmvc 配置之 mvc:default-servlet-handler
    springmvc配置之mvc:annotation-driven
    spring mvc 配置之 context:annotation-config vs component-scan
    React 学习笔记
    数据结构乱写
    字符串乱写
    HEOI2020 游记
    奇怪的基础容斥数学课件
    省选模拟104 题解
  • 原文地址:https://www.cnblogs.com/xuewei95/p/14634567.html
Copyright © 2020-2023  润新知