だから私は、このレポからコードを再実行したいjupyterノートでは動作しませsys.stdout.flush: https://github.com/dennybritz/reinforcement-learning/blob/master/MC/MC%20Prediction%20Solution.ipynbは
私の焦点は、印刷の一部である:彼が使用している
for i_episode in range(1, num_episodes + 1):
# Print out which episode we're on, useful for debugging.
if i_episode % 1000 == 0:
print "\rEpisode {}/{}.".format(i_episode, num_episodes)
sys.stdout.flush()
sys.stdout.flush()を使用して単純な「進行」出力を作成します。あなたは、私が考えて(私はCMDコマンドjupyter notebook
を使用して実行))(sys.stdout.flushを使用しているので、それが唯一の最後のエピソードの繰り返し10000/10000
を示して彼のレポからの出力を参照してください
しかし、私は私のjupyterノートでそれを実行しようとすることができますsys.stdout.flush()ではない作品、それが以前のものを上書きし、すべての印刷された反復を示していない。それが動作するためにjupyterを実行したときに、私は何かが足りない
Episode 1000/10000.
Episode 2000/10000.
Episode 3000/10000.
Episode 4000/10000.
Episode 5000/10000.
Episode 6000/10000.
Episode 7000/10000.
Episode 8000/10000.
Episode 9000/10000.
Episode 10000/10000.
?
それは上書きを引き起こす '\ r'sだ
と上書き作品に
'flush()'ではなく、内容がバッファ内でスタックされていないことを確認します。キーコンポーネント以外のものに焦点を当てているので、これは現在書かれているように少し混乱しています。 –
ああ..私はそこに '\ r'記号がないことを知っています。ありがとう:)今はっきりしています – malioboro