我是一个相对较新的Python转换器.我编写了一些代码来从各种来源获取/绘制数据,以自动化一些每周报告和预测.我一直对Jython概念很感兴趣,并希望将我编写的一些Python代码移植到Jython中.为了快速完成这项工作,我需要一个用于Jython(或Java)的NumPy克隆.那里有这样的东西吗?
在任何人开始之前,我知道在编程语言中谈论"速度"并不总是最有用的讨论.也就是说,速度是这里的问题.
我用两种语言解决了Project Euler问题5,虽然我在两种语言中的实现看起来与我的眼睛非常相似,但运行时却大不相同.Java只需几秒钟即可返回答案,而Python最多可能需要一分钟(当然,在同一台机器上).我很确定这不是Python的错,更不是程序员(我)的错,他们还没有学会用Python来学习.
请注意,我不是要求您重写我的代码.我只是在朝着正确的方向寻找一些推动力.(是的,我看过一些 类似的 线程,但大多数都是我的头脑,并没有直接比较两种语言中的相同算法.这个线程很有用,但同样,不直接比较Java和Python -坦率地说,答案有点难以理解.)
无需再费周折:
public class Problem5 {
public static void main(String[] args){
boolean found = false;
for (int i = 20; !found; i += 20){
if (DivisThrough20(i)) {
found = true;
System.out.println(i);
}
}
}
private static boolean DivisThrough20(int number){
boolean result = true;
for (int i = 19; result && i > 1; i--){
if (number % i != 0) result = false;
}
return …
Run Code Online (Sandbox Code Playgroud)