Python中的词典是否提供了形成类似开关的语句的最佳方法?
作者:互联网
我希望通过这种方式避免长条件if / elif语句链不会有任何性能或其他缺点:
errstr = {404: "404 Not Found",
405: "405 Method Not Allowed"}
if code in errstr:
print errstr[code];
解决方法:
是的,它们是最好的解决方案,因为它们被实现为哈希表,可以提供近似恒定的查找时间(如果哈希函数很好).如果链线性时间,二叉树将给出对数查找时间.如果必须表示从不太大的有限集到其他集合的映射,则通常使用哈希表.
顺便说一句,Python是一种非常好的学习语言,因为在Python中,最简单的解决方案通常也是最好的解决方案.
标签:dictionary,conditional,switch-statement,python 来源: https://codeday.me/bug/20191106/1999198.html