[oeasy]python0066_控制序列_光标位置设置_ESC_逃逸字符_CSI
光标位置
回忆上次内容
上次讲了 三引号的输出
三引号中
回车和引号 都会 被原样输出
\
还是需要从\\
转义黑暗森林 快被摸排清了
没 研究过吗?🤔
还有哪个 转义序列

\e
是 干什么的?🤔
回忆转义
转义转义
转化含义

\
反斜杠(backslash)加了之后字符就不是原来的意思了
转义么
转义转义
转化含义
所以
\
反斜杠这个字符就是
\b
键盘上的退格对应的数值就是
8
转义为
Backspace
这个含义Backspace
退格就是这个序列转化含义之后的含义也叫做转义字符
Escape character
\b
这两个字符的序列算是一个转义序列Escape sequence
\
这个转义字符会让\b
转义序列这个转化后的含义也对应一个ascii字符
转义 Escape
\e
是什么意思呢?

转义之后的的含义竟然是 escape
搜索结果
来捋一捋🤔

\
是转义字符要和后面的字符一起构成转义序列
\e
是转义序列转义的含义是 escape
所谓转义转义
转化含义
转义序列
\e
对应的字符含义是Escape再次逃逸出去
能逃去到哪里呢?
逃逸
从标准输出序列中逃逸出来

可以让输出
可就不是 输出的文本 了
逃逸(Escape)出去
从当前的字符串序列中
后面的内容
而是 控制序列(Control Sequence)
在
第10行第20列
进行输出[10;20H
控制 输出位置这种控制方法
ANSI escape code 标准
在今天被称为
我们来试试
动手实验

真的可以定位输出
从正常的输出流逃逸到了控制序列!!!

那为什么有控制序列呢?
缘起
电传打字机 输出的颜色
来控制 打印颜色的深浅
是物理过程
只能通过 控制色带(类似于墨盒)

早期的终端
都有 自己独特的 控制字符
通过调节 显示器亮度 来改变显示效果
各个终端的 制造商
这些特殊字符 是和 机器相关 的
彼此 并不兼容
但只要 接受到 这些控制字符
终端 就可以 调整输出方式
比如
输出字符
在 某个横纵坐标位置
[x,y]
这就是 数字过程了
统一标准
但是不同终端
控制方式不同
可能 造成显示状态
异常
远程终端输出结果不可控
需要一个关于控制字符的统一标准
1964 年
ISO 646
整合为工业标准
叫做 ANSI X3.64
在欧洲以
ECMA-6
的形式存在后来被
ANSI
(American National Standards Institute
)

是不是很像ascii
而且包括了 整个黑暗森林
本来 在各种电传打字机 中实现支持
现在在
terminal软件
中实现支持
esc 键
Teletype Model ASR-33 终端键盘
数据通信行业 最受欢迎的终端之一
1963 年推出
注意 shift 和 ctrl 都已经出现
Alt Mode 出现在第 1 列

\e
这个转义序列 有了对应的按键吗?是用来 切换模式的 特殊按键
这是当时的
esc
键 吗?ALT MODE
总结
这次了解了 新的转义模式
这个字符让输出退出标准输出流
进行控制信息的设置
可以设置光标输出的位置
\33 逃逸控制字符 esc

ASR33中的ALT MODE
是 今天的ESC吗????🤔

我们下次再说!👋
蓝桥->https://www.lanqiao.cn/courses/3584
github->https://github.com/overmind1980/oeasy-python-tutorial
gitee->https://gitee.com/overmind1980/oeasypython
视频->https://www.bilibili.com/video/BV1CU4y1Z7gQ 作者:oeasy