有些时候我们看到部分工具能够在给出提示项或者下载库信息的时候,有点类似滚动的效果,其实就是清除了一些行的字符信息。虽然我总结的不是很全,但是就我知道的方式而言,总结了下面的一些方法实现工具,仅供参考:
from prompt_toolkit.shortcuts import clear
# 清屏
clear()
import sys
def clear_console():
sys.stdout.write("\033[2J\033[H")
ANSI码的参考: https://gist.github.com/fnky/458719343aabd01cfb17a3a4f7296797
import sys
def clear_lines(num_lines: int):
# Move the cursor up 'num_lines' lines
sys.stdout.write("\033[{}A".format(num_lines))
# Clear the lines
sys.stdout.write("\033[2K" * num_lines)
# Move the cursor back to the beginning of the first cleared line
sys.stdout.write("\033[{}G".format(0))
sys.stdout.flush()
以上方式都可以实现对终端字符的清理,同时参考上面的那个 ANSI 码的链接,你还可以自定义更多其他功能。