我是Python的初学者(也是stackoverflow的初学者,所以请原谅我缺乏格式化知识)。我精通C,C ++,java,Delphi,VB和其他语言。
我试图遍历类对象列表并执行一些计算。我正在处理约60,000至100K记录的列表。在任何一种提到的语言中,以下代码将在几秒钟到几分钟内执行(取决于语言)。但是对于python来说要花费几个小时。我的推测是问题在于实现,而不是语言本身。
在如何优化此例程方面的任何帮助将不胜感激。仅供参考-我确实在搜索while循环/进行循环比较...优化...我发现的示例似乎过于简单,我对这些示例还不够熟悉python的方法/库。
class structure:
Stock
{
#mu - is float
#sigma - is a float
}
mylist是Stock类对象的列表(注意:stock类中的属性多于列出的属性,并且仅列出函数的相关部分以最大程度地减少混乱)。代码应遍历对象列表,执行一些计算并生成结果列表
代码(Python 3.x):
for x in range(nCount):
nSum= 0.0
for aitem in mylist
tp = []
for z in range (nInterval):
a = (norm.ppf (random(), loc = aitem.mu, scale = aitem.sigma))
a = math.exp (a)
a = a * tp [-1]
tp.append( a )
aitem.price.append(np.mean(tp) )
aitem.current = aitem.price[-1]/aitem.price[-2]
nSum = nSum + aitem.current* aitem.Weight
RList.append(RSum)