python没有switch语句,if elif else组合足以应付大部分情况,但是还有更好的选择:
#使用if代替
if sys.argv[1] == 'e':
walk_cd()
elif sys.argv[1] == '-d':
search_cd()
...
else:
raise CommandException("Unknow Command:" + sys.argv[1])
#更好的做法
commands = {
'-e' : walk_cd,
'-d' : search_cd,
}
try:
commands[sys.argv[1]]()
except KeyError:
raise CommandException("Unknow Command:" + sys.argv[1])
本文探讨了Python中由于缺乏内置的switch语句而采用的替代方案。通过使用if-elif-else结构来实现类似的功能,并介绍了一种更优雅的方法——通过字典映射来替代传统的条件判断。
530

被折叠的 条评论
为什么被折叠?



