[oeasy]python0082_[趣味拓展]控制序列_清屏_控制输出位置_2J

发布时间 2023-08-08 08:33:17作者: overmind1980
光标位置 回忆上次内容
  • 上次了解了键盘演化的过程
  • ESC 从 组合键
  • 到 独立按键
 
 
添加图片注释,不超过 140 字(可选)
 
  • ESC的作用 是
  • 进入 控制序列
  • 配置 控制信息
  • 控制信息
  • \033[y;xH 设置光标位置
  • \033[2J 清屏
 
 
  • 这到底怎么控制????
  • 来实现这些功能?
控制
  • 是由 系统中 终端软件
  • 来实现的
 
 
添加图片注释,不超过 140 字(可选)
 
  • 具体来说
  • 当前系统中 终端软件 就是
  • xfce terminal
 
 
 
添加图片注释,不超过 140 字(可选)
输出字符
  • \033是转义序列
  • \33\033的省略写法
  • `\0ooo 的方式是
  • 使用 八进制形式 输出转义字符
 
 
  • 033
  • ord("\e") 的八进制形式
 
  • 也可以 写成 16进制形态
  • 0x1b
  • \x1b
 
 
print("\033[2J")
  • J 是模式选择
  • 清屏模式
  • 分为四种清屏
  • 0J - 从光标清到屏幕结束
  • 1J - 从光标清到屏幕开头
  • 2J - 整屏幕清
  • 3J - 整屏幕清并选择清空滚动缓存
 
 
 
添加图片注释,不超过 140 字(可选)
 
  • 2J 是 整屏幕全清空
屏幕清空
  • 仿佛宇宙进行了一场重启
  • 回到了最初什么都没有的初始状态
  • 白茫茫大地真干净
 
 
 
添加图片注释,不超过 140 字(可选)
 
  • 这个字符的宇宙
  • 究竟有多大呢?
 
观察环境
  • 进入vi 观察屏幕大小
 
添加图片注释,不超过 140 字(可选)
 
  • 终端屏幕默认 80*24 (字符)
  • 这尺寸可以追溯到 早期的存储介质
  • 纸质卡片
 
  • 目前已经成为了 终端默认的大小
 
 
添加图片注释,不超过 140 字(可选)
 
  • 终端清屏之后
  • 可以让光标
  • 从左上角进行输出吗?
 
 
设置光标
  • \33[ 是CSI
  • 控制序列前导符
  • Control Sequence Introducer
 
  • 如果没有csi
  • 就是将文本直接输出到标准输出流
 
  • 如果加上了csi
  • 就输出了控制序列
  • 从而可以控制输出的位置和颜色等
 
print("\33[1;1Hoeasy")
  • 1;1 指的是
  • 屏幕左上角
  • 终端大小
  • 横向80字符
  • 纵向24字符
 
 
  • 中间用分隔符是分号(;)
 
  • 设置好了输出位置 之后
  • 再输出 后面的字符 oeasy
 
  • H 是模式选择
 
添加图片注释,不超过 140 字(可选)
 
  • 可以先清屏 再输出吗?
清屏并设置光标 print("\33[2J") print("\33[1;1Hoeasy")
  • 这是两句话
  • 完成两件事
  1. 2J清屏
  2. 1;1H设置输出位置
 
 
 
添加图片注释,不超过 140 字(可选)
 
  • 两句话可以合并成一句吗?
合并输出
  • "\33[2J\33[1;1Hoeasy"
  • \33[2J 终端接收到后清屏
  • \33[1;1H 终端接收到后设置光标
  • 终端输出 oeasy
 
print("\33[2J\33[1;1Hoeasy")
  • 可以换个位置 输出吗?
换个位置 print("\33[2J\33[10;10Hoeasy")
  • "\33[2J\33[10;10Hoeasy"
  • 先清屏
  • 再在(10,10)坐标输出oeasy
 
  • 这样就可以 让光标
  • 在屏幕中 任意移动
 
 
添加图片注释,不超过 140 字(可选)
 
  • 一个跟头 十万八千里
  • 这就是通过escape引发的
  • 控制序列的 作用
 
escape
  • escape 就是退出
  • 从 当前输出序列中 退出来
  • 进行 控制信息的输出
 
 
 
添加图片注释,不超过 140 字(可选)
 
  • 看起来很像 安全逃生出口
 
添加图片注释,不超过 140 字(可选)
总结
  • 这次了解了 一个新的转义模式
  • \33 逃逸控制字符 esc
 
  • esc 让输出
  • 退出 标准输出流
  • 进行 控制信息的设置
  • 可以 清屏
  • 也可以 设置光标输出的位置
 
 
  • 还能做什么呢?
  • 可以 设置 字符的颜色吗????
 
 
添加图片注释,不超过 140 字(可选)