反射的例子

 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('输入错误...')

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

posted @ 2019-08-29 12:44  Aiden_Shao  阅读(227)  评论(0编辑  收藏  举报