gpt4 book ai didi

python - python : multiple OR or IN in if statement? 中最好的方法是什么

转载 作者:太空狗 更新时间:2023-10-29 21:16:46 24 4
gpt4 key购买 nike

Python 中最好的方法是什么:多个 ORIN 在 if 语句中?考虑性能和最佳实践。

if cond == '1' or cond == '2' or cond == '3' or cond == '4': pass

if cond in ['1','2','3','4']: pass

最佳答案

最好的方法是使用集合:

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

因为集合中的成员测试是 O(1)(恒定成本)。

其他两种方法的复杂性相同;只是不变成本的差异。 in 测试列表和 or 链短路;一旦找到匹配项就终止。一个使用一系列字节码跳转(如果 True 则跳转到末尾),另一个使用 C 循环并在值匹配时提前退出。在最坏的情况下,cond 匹配序列中的元素,这两种方法都必须检查所有 元素才能返回 。在这两者中,我会随时选择 in 测试,因为它的可读性要高得多。

关于python - python : multiple OR or IN in if statement? 中最好的方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17615020/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com