コンソールの同じ行にprint
コンソールで、表示を更新したいけど、行は増やしたくないときに使うもの。
消してもよい情報をprintするときは、printt.printt("hoge","piyo1",over_write=True) のように、"over_write=True” とする。
実行結果
('hoge', 'piyo0') ('hoge', 'piyo3') ('hoge', 'piyo4') ('hoge', 'piyo7') ('hoge', 'piyo9')
コード
import time class printt(): # クラス変数 last_over_write_status = False @classmethod def printt(cls, *args, over_write=False): if __class__.last_over_write_status is True: print("\r",end="") else: pass if over_write is False: if __class__.last_over_write_status is True: # 1行前の表示残りを上書きするため、後半に空白を追加 print(args," ") else: print(args) __class__.last_over_write_status = False else: print(args,end="") __class__.last_over_write_status = True if __name__ =="__main__": printt.printt("hoge","piyo0") time.sleep(1) printt.printt("hoge","piyo1",over_write=True) time.sleep(1) printt.printt("hoge","piyo2",over_write=True) time.sleep(1) printt.printt("hoge","piyo3") time.sleep(1) printt.printt("hoge","piyo4") time.sleep(1) printt.printt("hoge","piyo5",over_write=True) time.sleep(1) printt.printt("hoge","piyo6",over_write=True) time.sleep(1) printt.printt("hoge","piyo7") time.sleep(1) printt.printt("hoge","piyo8",over_write=True) time.sleep(1) printt.printt("hoge","piyo9")