我有两个具有以下行数的文件:
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')
有没有更快的方法来做到这一点?
谢谢