gpt4 book ai didi

python - 哪个更快,a==2==b,或者a==2和b==2

转载 作者:太空狗 更新时间:2023-10-30 02:03:33 24 4
gpt4 key购买 nike

哪个更快,a==2==b,或者 a==2b==2

需要明确的是,表达式 1 对两项都求值一次,而不是将 ab 进行比较。

这值得一读:In Python, is an "and" statement or all() faster?

最佳答案

使用 timeit 为这两种方法计时。

我正在使用 len() 来更好地衡量执行时间,作为延迟即时评估的一种方式。

两者的设置字符串:

setup = """import random
import string
a = ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(2))
b = ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(2))"""

最终测试表达式 A:

timeit.repeat("len(a)==2==len(b)", setup=setup, repeat=100)

最终测试表达式 B:

timeit.repeat("len(a)==2 and len(b)==2", setup=setup, repeat=100)

这两个测试都运行表达式一百万次,记录时间,然后执行一百次。

事实证明,表达式 B 快了大约十分之一秒。在我的电脑上,平均时间如下:

  • A:0.22025904178619385 秒
  • 乙:0.3740460252761841 秒

亲自尝试一下。

随机字符串生成感谢 this Stack Overflow question .

关于python - 哪个更快,a==2==b,或者a==2和b==2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30807439/

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