python嵌套循环的效率问题

rib06 2008-07-30 05:09:45
今天发现python中执行嵌套for循环的效率似乎不太快,实验如下:

counter = 0
for i in range(16108):
for j in range(10310):
counter = counter + 1
print "Counter is: " + str(counter)

这段脚本大约要执行3到4分钟左右出结果。然后我用c#写了一段相同功能的

using System;

public class App
{
public static void Main()
{
int counter = 0;
for (int i = 0; i < 16108; i++)
for (int j = 0; j < 10310; j++)
counter++;
Console.WriteLine("Counter is: {0}", counter);
}
}

不到1秒就出结果了。差别会这么大吗?是不是我的代码有问题?

小弟接触python不久,还请大家指点,多谢!
...全文
587 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
fibbery 2008-07-31
  • 打赏
  • 举报
回复
你的C#代码很有可能编译器作了优化,如果加上禁止优化的选项,我想也不会很快,但可以肯定一定比Python快!
iambic 2008-07-30
  • 打赏
  • 举报
回复
是慢,没办法。尽量别写这样的代码是了。需要速度的时候用C或者C++写扩展吧。
rib06 2008-07-30
  • 打赏
  • 举报
回复
不好意思,没有3、4分钟那么长,刚才又测了一下,是45秒左右,但也够长的了

37,718

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧