0
我有這樣的腳本;python的更快計算優化defaultdict
for b in range(len(xy_alignments.keys())):
print str(b) + " : " + str(len(xy_alignments.keys()))
x = xy_alignments.keys()[b][0]
y = xy_alignments.keys()[b][1]
yx_prob = yx_alignments[(y,x)]/x_phrases[x]
xy_prob = xy_alignments[(x,y)]/y_phrases[y]
line_str = x + "\t" + y + "\t" + str(yx_prob) + "\t" + str(xy_prob) + "\n"
of.write(line_str.encode("utf-8"))
of.close()
xy_alignments
,yx_alignments
,x_phrases
,並y_phrases
是 蟒蛇defaultdict變量,涉及數以百萬計的密鑰。
當我運行上面的循環,它運行緩慢。
蟒蛇愛好者是否有建議讓它變快?
謝謝,
刪除'print'。這可能是迄今爲止代碼中最慢的部分。 – zvone
但它非常非常慢。跳過一個循環需要2秒鐘的時間。 – yusuf
現在每個循環需要1秒。但仍然非常糟糕。 – yusuf