Pythonスクリプトで次のコードを書きました。入力ファイルのすべての行をループしているようには見えませんが、1行目だけ実行されます。
while linecount1>0:
line=images.readline().split()
query=queries.readline().split()
for word1 in line:
count+=1
for word2 in query:
x='java -cp "lib/*:esalib.jar" clldsystem.esa.ESAAnalyzer %s %s' % (word1, word2)
args=shlex.split(x)
print args
p=subprocess.Popen(args)
p.wait()
#print p
f=open("result",'r')
sim=f.readline()
temp.write(str(word1)+" ")
temp.write(str(word2)+"\n")
#print value
if word1==word2:
score=score+(3*float(sim))/2
same+=1
else:
score=score+float(sim)
linecount1=linecount1-1
コードは正常に機能しますが、ファイル「画像」の最初の行に対してのみです。ただし、すべての行を反復処理するわけではありません。ファイル「images」には複数の行があり、各行には複数の単語があることに注意してください。ファイル「クエリ」には1行ありますが、
私は何を間違っていますか。ありがとう