次の行数のファイルが 2 つあります。
file1 - 110433003
file2 - 4838810
これらの間で共通のフレーズを見つける必要があります。各行の形式は次のとおりです。
p1 ||| p2 ||| .......
file1 の p1 を file2 の p2 にすることができます。残念ながら、私が書いたコードはこれを行うには時間がかかりすぎています。
import sys
import os
if(len(sys.argv)<2):
print 'python CommonPhrases.py enFr hrEn commonFile'
sys.exit()
enFr = open(sys.argv[1],'r')
hrEn = open(sys.argv[2],'r')
common = open(sys.argv[3],'w')
sethrEn = set([])
setenFr= set([])
for line in hrEn:
englishPhrase = line.split(' ||| ')[1]
sethrEn.add(englishPhrase)
for line in enFr:
englishPhrase = line.split(' ||| ')[0]
if(englishPhrase in sethrEn):
common.write(englishPhrase+'\n')
これを行うより速い方法はありますか?
ありがとう