Skip to main content
 首页 » 编程设计

python之这个 python 基准测试有用吗

2025年05月04日17lexus

我最近尝试在 python 中运行 Project Euler 问题。我相信它会执行 100^5 步之类的操作。

在看到我的解决方案耗时太长(它应该在一分钟内运行)后,我问自己任何运行这么多步骤的 python 程序是否可行(在一分钟内)

所以,我设计了一个愚蠢的小测试

def fun(): 
  l=range(1,100) 
  for x in l: 
     for y in l: 
        for k in l: 
           for n in l: 
               for h in l: 
                  s=1 
 
>>> t = timeit.Timer('demorado.fun()','import demorado') 
>>> t.timeit(1) 
1202.484529018402 
>>> 

有意义吗?它是否证明具有这么多步骤(在本例中,我猜有 2*(100^5))的任何程序总是需要大约 20 分钟?

请您参考如下方法:

Euler 项目的问题不应该在一分钟内运行,因为您的编程语言足够快,但因为存在比蛮力更聪明的解决方案。

但是在你的情况下,是的,你会得到一个循环 99^5 次的函数(不是 100^5 因为 range(1,100) 是 1, 2, ..., 99)...