3

プロジェクト 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
4

2 に答える 2