我知道C++应该比Python 3快得多,因为它是一种编译语言而不是解释语言.
我编写了两个程序,使用蒙特卡罗模拟来计算Pi,一个在Python 3中,另一个在C++中.
Python的结果比C++快大约16倍.如下图所示,重复值为(10,000,000),Python需要8.5秒,而C++需要137.4秒.
我是C++的新手,但我找不到解释这种行为的在线帖子.
根据这篇文章, C++一般应该比Python快10倍 - 100倍,这显然不是我的情况.
请帮助我理解为什么Python在我的情况下比C++快得多.
我的结果:
Python源代码:
from random import random
import time
import sys
class MonteCarloSimulator(object):
def __init__(self, value):
self.value = value
if sys.platform == "win32":
self.G = ''
self.R = ''
self.END = ''
else:
self.G = '\033[92m'
self.R = '\033[1;31m'
self.END = '\033[0m'
def unit_circle(self, x, y):
if (x ** 2 + y ** 2) <= 1:
return True
else: …Run Code Online (Sandbox Code Playgroud)