0
나는 그런 스크립트를 가지고있다;파이썬 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 변수입니다.
위의 루프를 실행하면 천천히 실행됩니다.
파이썬 애호가는 빨리 할 제안이 있습니까?
감사합니다.
'인쇄'를 제거하십시오. 아마도 그 코드의 가장 느린 부분 일 것입니다. – zvone
그러나 매우 느립니다. 하나의 루프를 건너 뛰려면 2 초가 걸립니다. – yusuf
이제는 루프 당 1 초가 걸립니다. 그러나 아직도 그렇게 나쁘다. – yusuf