反射的例子
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('输入错误...')
很明显,用了反射之后,代码变得简洁了,很清晰。。。