この
それは時にimporvedすることができ
を達成するために非常に単純なPythonのscripitですが、仕事をする必要があります。
TEMP.TXT
XX YY ZZ XYZ AA
XX YY ZZ XYZ AA
XX YY ZZ XYZ AA
XX YY 111 のAA CC
TEMP2。 txt
YYのAAのCC、DD
共通
FF XX EE 11
オブジェクト指向ミリ AAのTT。PY
#!/usr/bin/python
import sys
def main():
f1,f2 = tryOpen(sys.argv[1],sys.argv[2])
commonWords(f1,f2)
f1.close()
f2.close()
def tryOpen(fn1,fn2):
try:
f1 = open(fn1, 'r')
f2 = open(fn2, 'r')
return f1,f2
except Exception as e:
print('Oh No! => %s' %e)
sys.exit(2) #Unix programs generally use 2 for
#command line syntax errors
# and 1 for all other kind of errors.
def commonWords(f1,f2):
words = []
for line in f1:
for word in line.strip().split():
words.append(word)
for line in f2:
for word in line.strip().split():
if word in words: print 'common word found => %s' % word
if __name__ == '__main__':
main()
出力
./common.py temp.txt temp2.txt
common word found => yy
common word found => aa
common word found => cc
common word found => xx
common word found => aa
だから、言葉によってつもりですか?または、両方のファイルで発生する長さ≥3の部分文字列はすべて? (私は一般的なUNIXツールについて知らないので、おそらく動的なプログラミングをしなければならないだろう。) –
すべての部分文字列。 – ahmex