终端-如何覆盖多行?
问题内容:
我想覆盖hello
。但是当a\n
被打印时,我无法回到那一行。因此,应用程序会执行哪些操作,从而覆盖了程序htop之类的许多行。
import sys
print 'hello'
print 'huhu',
print '\r\r\rnooooo\r'
问题答案:
该彩色光第三方模块具有用于改变光标的位置,通过“\ X1B
[?:H”支持命令字符串。您也可以通过这种方式清除屏幕。
import colorama
colorama.init()
def put_cursor(x,y):
print "\x1b[{};{}H".format(y+1,x+1)
def clear():
print "\x1b[2J"
clear()
put_cursor(0,0)
print "hello"
print "huhu"
#return to first line
put_cursor(0,0)
print "noooooo"
该模块似乎通过导入ctypes并调用来做到这一点windll.kernel32.SetConsoleCursorPosition
。参见win32.py,第58行。