您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python中最好的方法是什么:if语句中的OR或IN?

python中最好的方法是什么:if语句中的OR或IN?

最好的方法是使用 set

if cond in {'1','2','3','4'}:

因为集合中的成员资格测试为O(1)(不变成本)。

其他两种方法的复杂度相同。只是固定成本的差异。in测试既有清单又有or链条短路;找到匹配项后立即终止。一种使用字节码跳转序列(如果为True,则跳转到末尾),另一种使用C循环,如果值匹配则使用早期退出。在最坏的情况下,在这里cond没有 匹配两种方法必须检查的序列中的元素 所有 的元素它可以返回之前False在这两者中,我每天都会选择in测试,因为它更具可读性。

python 2022/1/1 18:47:26 有318人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶