其他人已经表现出更为惯用的方式
Python,但如果数据的大小确实太大,你可以
然后使用系统实用程序来排序和消除重复项
使用File是一个返回一行的迭代器这一事实
做一次,做一些事情:
import os
os.system('sort -u -n s1.num > s1.ns')
os.system('sort -u -n s2.num > s2.ns')
i1 = open('s1.ns', 'r')
i2 = open('s2.ns', 'r')
try:
d1 = i1.next()
d2 = i2.next()
while True:
if (d1 < d2):
d1 = i1.next()
elif (d2 < d1):
d2 = i2.next()
else:
print d1,
d1 = i1.next()
d2 = i2.next()
except StopIteration:
pass
这样可以避免一次有多行(对于每个文件)在内存中(系统排序应该比任何东西都快Python可以做,因为它针对这一项任务进行了优化).