Python中Decimal向量的基本数学运算

时间:2017-08-26 23:35:57

标签: python decimal

我正在寻找一种快速实现,在Python中将两个十进制向量相乘。我试着制作两个列表,然后将它们相乘:

from decimal import Decimal, getcontext
getcontext().prec = 20
import cProfile

a = [Decimal(x) for x in range(1,10000)]
b = [Decimal(x) for x in range(1,10000)]
def multiply(a,b):
    [x*y for x,y in zip(a,b)]
cProfile.run('multiply(a,b)')

这需要大约0.224秒。但是,如果我尝试为numpy向量做同样的事情:

import numpy as np
a = np.arange(1,10000)
b = np.arange(1,10000)
def multiply(a,b):
    a*b
cProfile.run('multiply(a,b)')

需要0.000秒。有没有其他方法来制作十进制矢量并在python中将它们相乘?

0 个答案:

没有答案