はじめに
ディープラーニングの学習をjupyter notebookで行っている際、ログの出力でページが埋め尽くされます。
学習には時間がかかりますので、ログ出力は必要なんですが、たまに邪魔に感じる時もありますので、制御できないか調べてみました。
セルを参照するために延々と上スクロールが必要
セルの出力を消してみる
(Pythonコード)
# 表示の消去
from IPython.display import clear_output
import time
for i in range(10):
clear_output()
print('このメッセージを表示後に消します。を繰り返します。')
time.sleep(1)
print('終わり')
出力行の更新をしてみる
# 表示行の更新
from IPython.display import display
from time import sleep
print('次行の表示内容を更新します。')
update_line = display('更新前です。 -', display_id=True)
sleep(1)
for i in range(10):
update_line.update( str(i) + '回目の更新をしました。')
sleep(1)
print('終わり')
出力行の更新をしてみる(キャリッジリターンを利用)
IPythonではなく「キャリッジリターン」でやってみます。
(Pythonコード)
# 表示行の更新(キャリッジリターンを利用)
from time import sleep
print('次行の表示内容を更新します。')
print("\r"+ '更新前です。', end="")
sleep(1)
for i in range(10):
print("\r"+ str(i) + '回目の更新をしました。',end="")
sleep(1)
print("\n"+'終わり')
print命令に__end=""__がないと改行していまいますので注意です。
まとめ
これでログだらけのページを整理できそうです。