zoukankan      html  css  js  c++  java
  • 反射的例子

     1 #没学反射之前
     2 
     3 class User(object):
     4     def login(self):
     5         print('欢迎来到登录页面...')
     6 
     7     def register(self):
     8         print('欢迎来到注册页面...')
     9 
    10     def save(self):
    11         print('欢迎来到存储页面...')
    12 
    13 while 1:
    14     choose = input(">>:").strip()
    15     if choose == 'login':
    16         obj = User()
    17         obj.login()
    18 
    19     elif choose == 'register':
    20         obj = User()
    21         obj.register()
    22 
    23     elif choose == 'save':
    24         obj = User()
    25         obj.save()
     1 #学了反射之后
     2 
     3 class User(object):
     4     def login(self):
     5         print('欢迎来到登录页面...')
     6 
     7     def register(self):
     8         print('欢迎来到注册页面...')
     9 
    10     def save(self):
    11         print('欢迎来到存储页面...')
    12 user = User()
    13 
    14 while 1:
    15     choose = input(">>:").strip()
    16     if hasattr(user,choose):
    17         func = getattr(user,choose)
    18         func()
    19     else:
    20         print('输入错误...')

    很明显,用了反射之后,代码变得简洁了,很清晰。。。

  • 相关阅读:
    博客美化
    hello world
    mysql数据库索引
    Golang:线程 和 协程 的区别
    计算机网络详解
    Redis持久化机制
    nginx 详解
    多级缓存的分层架构
    svn忽略文件不提交至服务器的方法
    Mysql 事务及其原理
  • 原文地址:https://www.cnblogs.com/intruder/p/11429075.html
Copyright © 2011-2022 走看看