私は理解できない動作に直面しました。端末のサイズが変更されたときにcursesがtime.sleep()を破る
import curses
import time
myscreen = curses.initscr()
y, x = myscreen.getmaxyx()
i = 0
while y >= 24 and x >= 80 and i <= 23:
myscreen.addstr(i, 0, 'Python curses in action!')
myscreen.refresh()
y, x = myscreen.getmaxyx()
i += 1
time.sleep(1)
curses.endwin()
このコードでは、1秒間隔で24個の文字列が書き込まれます。これは問題ありません。 しかし、実行中にターミナルウィンドウのサイズを変更すると、文字列が画面上にはるかに速く表示され、次に1文字/秒が表示されます。 この動作を説明し、おそらく私のtime.sleep()を「保護する」方法をアドバイスしてもらえますか?おかげさまで
P.S. curses sleep()は問題なく動作します。 time.sleep()
のドキュメントから