如何多次执行Java/Python程序?
我目前正在做一项作业,任务是测量Python和Java中许多程序的执行时间,目的是测量和比较两种计算机语言的性能。我总共有10次测试,每组2次;对于每个测试集,一个测试是用Java编写的,相应的测试是用Python编写的,以此类推。我希望将每个测试运行多次,例如100次,并测量每次运行的时间。然后我想计算得到的执行时间的总和。在Python/Java中如何实现这一点?我尝试过编写一个双for循环,如下所示:如何多次执行Java/Python程序?,java,python,Java,Python,我目前正在做一项作业,任务是测量Python和Java中许多程序的执行时间,目的是测量和比较两种计算机语言的性能。我总共有10次测试,每组2次;对于每个测试集,一个测试是用Java编写的,相应的测试是用Python编写的,以此类推。我希望将每个测试运行多次,例如100次,并测量每次运行的时间。然后我想计算得到的执行时间的总和。在Python/Java中如何实现这一点?我尝试过编写一个双for循环,如下所示: for i in range(1, 100): for j in range(1, 1
for i in range(1, 100):
for j in range(1, 10000000):
# do integer division
import time
for i in range(1, 100):
start = time.time()
for j in range(1, 10000000):
# do integer division
finish = time.time()
span = finish - start
# span is the time in seconds.
…但它似乎不起作用。我也想用Java做同样的事情。如何执行此操作?您可能要添加的第一项是
time
命令,该命令以秒为单位返回当前时间。因此,您可以这样测量时间跨度:
for i in range(1, 100):
for j in range(1, 10000000):
# do integer division
import time
for i in range(1, 100):
start = time.time()
for j in range(1, 10000000):
# do integer division
finish = time.time()
span = finish - start
# span is the time in seconds.
start=time.time()
启动计数器。然后,print(int(time.time()-start))
将返回以秒为单位的时间
请使用range()
中的101
作为参考。range()
的第二个参数是“向上”而不是includelong startTime=0;
long startTime = 0;
for(int i = 0; i <= 100; i++){
startTime = System.nanoTime();
for(int j = 0; j <= 10000000; j++){
//Do integer division
}
}
long endTime = System.nanoTime();
long duration = (endTime - startTime);
System.out.println(duration);
对于(inti=0;iPython:
import time
meas = []
for i in range(100):
start = time.time()
for j in range(10000000):
# do integer division
meas.append(time.time() - start)
爪哇:
long-meas[]=新long[100];
对于(int i=0;i<100;i++){
长启动=System.nanoTime();
对于(int j=0;j<10000000;j++)
//做整数除法
}
meas[i]=System.nanoTime()-start;
}
在这两种语言中,“meas”数组中都有100个测量值(单位:Java为整纳秒,Python为浮点秒,因此后者也有小数部分),其中每个度量都会运行10000000次分区。欢迎使用StackOverflow。请阅读并遵循帮助文档中的发布指南。适用于此处。在您发布MCVE代码并准确描述问题之前,我们无法有效帮助您。我们应该能够将您发布的代码粘贴到文本文件中并复制e您描述的问题。特别是,“似乎不起作用”不是一个问题规范。您是在尝试从Python调用Java程序还是从Python调用Java程序?是的,很抱歉。我在这里的第一篇文章。不,我在Eclipse IDE中工作,我已经安装了JDK和PyDev。