
以下代码 main_swit
if kwarg.get('sub_switch'): do() del kwarg['sub_switch'] elif kwarg.get('sub_switch') is False: del kwarg['sub_switch'] elif kwarg.get('sub_switch') is None and main_switch: do() 这样的逻辑有没有可以优化的余地?
1 BOYPT 2016-09-02 17:04:57 +08:00 写到这样的逻辑都会想哭 |
2 Allianzcortex 2016-09-02 17:14:37 +08:00 if 'sub_switch' in kwarg: kwarg.pop() 这样子的。。。?? |
3 264768502 OP 或许这样更好 ```python try: if kwarg.pop('sub_switch'): do() except KeyError: if main_switch: do() ``` |
4 just4test 2016-09-05 09:19:15 +08:00 首先你不能 temp = kwarg.get('sub_switch') 么? |
6 264768502 OP 果然抛开业务谈逻辑不是很好,这里还有个性能问题 查了一下,当 key 高概率在字典,可以用 try.否则先查看有没有,再执行逻辑,性能上会更好 |