プロジェクト euler で問題 10を試みて合格しましたが、200 万未満のすべての素数をテキスト (.txt) ファイルに書き込んで続行し、問題を解決する main 関数にいくつかの小さな調整を加えたらどうなるかを決めました。変数(tot)に追加するだけでなく、ジェネレーターによって生成された素数をテキストファイルに書き込んだところ、最初は機能しましたが、各素数の後にスペースを追加するのを忘れたため、出力はちょっと意味不明でした
357111317192329313741434753
だから私は私のに変更txt.write(str(next_prime))
しましたtxt.write(str(next_prime) + ' ')
そのわずかな変更の後、出力は完全に意味不明でした
″‵‷ㄱㄠ″㜱ㄠ‹㌲㈠‹ㄳ㌠‷ㄴ㐠″</p>
関数の完全なコードは次のとおりです。
def solve_number_10():
total = 2
txt = open("output.txt","w")
for next_prime in get_primes(3):
if next_prime < 2000000:
txt.write(str(next_prime) + ' ')
#total += next_prime
else:
print "Data written to txt file"
#print total
txt.close()
return
なぜこれが起こるのか、どうすれば出力を次のようにすることができますか
3 5 7 11 13 17 19