无编程经验初学 python,求助高手

2015-04-28 16:47:35 +08:00
 v2fx

我写了一个循环用来测试最佳参数:
for a in range(100):
for b in range(100):
for c in range(100):
for d in range(100):
for e in range(100):
for f in candles:
........#用a,b,c,d,e,f开始算,candles是一个字典,里面有5000蜡烛
这样要算100*100*100*100*100*5000次吧?挂机两天两夜没结果,求高手指点是不是这种写法不行,现在的计算机不是每秒算几亿次吗。。。我该怎么办?

2416 次点击
所在节点    Python
7 条回复
NewYear
2015-04-28 18:39:59 +08:00
100*100*100*100*100*5000=50万亿。

假如你的电脑一秒运算10亿次……要1万秒,一天是86400秒。

那么你的电脑如果一秒运算1亿次……那需要十几天……

一般所说的每秒运算,不是你这样运算的好么……所以……
NewYear
2015-04-28 18:41:36 +08:00
@NewYear 好吧 我数学是体育老师教的。上面少算了一个0……反正你要明白,那些理论上的每秒多少次,不是你这样计算……
v2fx
2015-04-28 18:46:10 +08:00
@NewYear 谢谢,有没有效率的解决办法?
Kilerd
2015-04-28 18:49:30 +08:00
@NewYear 我怎么好像记得那些极限运算次数是用汇编算1+1 还是怎么的。
反正有一个衡量速度的方法就是1秒能算多少位的圆周率
v2fx
2015-04-28 18:52:28 +08:00
请高手们指点一下怎么提高速度,是写法不行,还是有更好的函数,还是用c写。。。
极限能提高多少?
Septembers
2015-04-28 19:30:06 +08:00
这个问题明显是可以分而治之的(MapReduce)
v2fx
2015-04-28 21:51:21 +08:00
@Septembers 谢谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/187015

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX