[oeasy]python0081_[趣味拓展]ESC键进化历史_键盘演化过程_ANSI_控制

简介: [oeasy]python0081_[趣味拓展]ESC键进化历史_键盘演化过程_ANSI_控制

光标位置 回忆上次内容

  • 上次了解了 新的转义模式
  • \033 逃逸控制字符 escape
  • 这个字符 让字符串 退出标准输出流
  • 进行控制信息的设置
  • 可以设置 光标输出的位置




添加图片注释,不超过 140 字(可选)

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


添加图片注释,不超过 140 字(可选)

查询文档

添加图片注释,不超过 140 字(可选)

  • 最开始的时候
  • 还没有esc键


  • 使用ctrl + shift + k
  • 实现esc效果


  • 后来的键盘
  • 有了 实体的esc键


escape 跳出

  • 现在键盘都有这个按键
  • 一般在左上角
  • 用来
  • 退出当前应用/游戏
  • 跳出菜单



添加图片注释,不超过 140 字(可选)

  • 上图esc在
  • 1 的左下
  • Q 的左边


  • esc可以
  • 从当前的纯文字标准输出流里面
  • 逃(escape)出来
  • 进行控制信息的传输


键盘的进化过程

  • 后来连接主机(main frame)用的是
  • 终端(terminal)


  • 当年最流行的终端 型号是
  • DEC VT100


添加图片注释,不超过 140 字(可选)

  • esc 在1 左边
  • 还没有 出现在最左上的位置


位置的变化

  • 玩一些terminal上面的游戏时
  • 可以用 esc 退出游戏环境
  • 进入菜单
  • 进行设置、存盘、读档、退出之类的操作



添加图片注释,不超过 140 字(可选)

  • 知道 什么时候退
  • 比知道 怎么玩重要😄


  • 键盘还没有 统一的标准
  • 功能键  F1-F10
  • 在 最左边



标准键盘

  • 101键盘布局 成为经典
  • 左上角是esc 标准位置


添加图片注释,不超过 140 字(可选)

  • 后来放在 左上角
  • 用边距和F1 拉开距离
  • 体现escape重要性


行业标准

  • 键盘开始有了标准布局
  • 并形成了工业标准


添加图片注释,不超过 140 字(可选)

  • 可以在ascii字符集里面
  • 找到esc 这个字符 么?


esc

  • 在下图中尝试找到esc

添加图片注释,不超过 140 字(可选)

  • esc 对应
  • (001 1011)2进制


  • 再到ascii应用中
  • 找一下esc?


ascii

  • 使用apt
  • 安装ascii这个应用


sudo apt install ascii

  • 找到这个字符

添加图片注释,不超过 140 字(可选)

  • 这个esc对应的是
  • (27)10进制
  • (1B)16进制


  • 这个(1B)16进制
  • 是怎么得到的呢?


1b

  • 使用hex函数
  • 可以得到
  • 数字的十六进制形式字符串
  • hexadecimal



添加图片注释,不超过 140 字(可选)

  • 如果是八进制呢?

添加图片注释,不超过 140 字(可选)

不同进制 表现形式

  • (1b)16进制
  • 对应着(27)10进制
  • 对应着(33)8进制


添加图片注释,不超过 140 字(可选)

  • 上面的分别是
  • 十六进制形态
  • 十进制形态
  • 八进制形态


  • 正如下面

添加图片注释,不超过 140 字(可选)

  • 不同的形态都可以
  • 用来转义吗?


不同形态

  • 不同的转义方式
  • 不影响功能


添加图片注释,不超过 140 字(可选)

  • 使用转义序列
  • 或者16进制转移方式
  • 或者8进制转移方式


添加图片注释,不超过 140 字(可选)

  • 在输出时
  • 没有差别
  • 都是换行效果


escape控制码大全

  • CSI 是
  • Control Sequence Introducer
  • 就是esc加[
  • esc就是\033
  • 用的是几进制的形式?



添加图片注释,不超过 140 字(可选)

  • 可以有各种方式
  • 控制位置


\033

  • 八进制的 形式

添加图片注释,不超过 140 字(可选)

  • \033[nA 光标上移 n 行
  • \033[nB 光标下移 n 行
  • \033[nC 光标右移 n 行
  • \033[nD 光标左移 n 行
  • \033[y;xH 设置光标位置
  • \033[2J 清屏
  • \033[K 清除从光标到行尾的内容
  • \033[s 保存光标位置
  • \033[u 恢复光标位置
  • \033[?25l 隐藏光标
  • \033[?25h 显示光标

光标的自由

  • 输出字符的位置
  • 以前是固定的
  • 仿佛被牢牢锁住


添加图片注释,不超过 140 字(可选)

  • 真的能 挣脱固定位置的锁链 吗?

添加图片注释,不超过 140 字(可选)

  • 好期待?

总结

  • 本次了解了键盘演化的过程
  • ESC 从 组合键
  • 到 独立按键


添加图片注释,不超过 140 字(可选)

  • ESC 的作用
  • 是 进入控制序列
  • 配置控制信息


  • 控制信息
  • \033[y;xH 设置光标位置
  • \033[2J 清屏



目录
相关文章
|
1天前
|
C语言 Python
[oeasy]python058_一句话让python崩了
本文介绍了如何通过重新赋值`__builtins__`使Python环境崩溃,并探讨了下划线的来历及其在编程中的作用。文章回顾了上次内容,展示了覆盖内建模块导致系统崩溃的过程,解释了恢复方法,以及PEP 8规范中关于空格使用的建议。最后,文章总结了下划线在变量定义和提高代码可读性方面的重要性,并简述了其从打字机时代到计算机时代的演变。
20 10
|
11天前
|
Python
[oeasy]python055_python编程_容易出现的问题_函数名的重新赋值_print_int
本文介绍了Python编程中容易出现的问题,特别是函数名、类名和模块名的重新赋值。通过具体示例展示了将内建函数(如`print`、`int`、`max`)或模块名(如`os`)重新赋值为其他类型后,会导致原有功能失效。例如,将`print`赋值为整数后,无法再用其输出内容;将`int`赋值为整数后,无法再进行类型转换。重新赋值后,这些名称失去了原有的功能,可能导致程序错误。总结指出,已有的函数名、类名和模块名不适合覆盖赋新值,否则会失去原有功能。如果需要使用类似的变量名,建议采用其他命名方式以避免冲突。
33 14
|
3天前
|
Python
[oeasy]python057_如何删除print函数_dunder_builtins_系统内建模块
本文介绍了如何删除Python中的`print`函数,并探讨了系统内建模块`__builtins__`的作用。主要内容包括: 1. **回忆上次内容**:上次提到使用下划线避免命名冲突。 2. **双下划线变量**:解释了双下划线(如`__name__`、`__doc__`、`__builtins__`)是系统定义的标识符,具有特殊含义。
18 3
|
6天前
|
存储 Python
[oeasy]python056_python中下划线是什么意思_underscore_理解_声明与赋值_改名字
在Python中,下划线有多种用途。单下划线(_)常用于避免命名冲突,如将`max`改为`max_`以保留内置函数功能。双下划线(__var__)通常用于特殊方法和属性,如`__name__`、`__doc__`等。此外,单下划线(_)在交互式解释器中表示上一次表达式的值,但不建议作为普通变量名使用。总结:下划线用于避免命名冲突及特殊标识。
13 1
|
20天前
|
C语言 Python
[oeasy]python054_python有哪些关键字_keyword_list_列表_reserved_words
本文介绍了Python的关键字列表及其使用规则。通过回顾`hello world`示例,解释了Python中的标识符命名规则,并探讨了关键字如`if`、`for`、`in`等不能作为变量名的原因。最后,通过`import keyword`和`print(keyword.kwlist)`展示了Python的所有关键字,并总结了关键字不能用作标识符的规则。
30 9
|
1月前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
1月前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
22天前
|
Unix Linux 程序员
[oeasy]python053_学编程为什么从hello_world_开始
视频介绍了“Hello World”程序的由来及其在编程中的重要性。从贝尔实验室诞生的Unix系统和C语言说起,讲述了“Hello World”作为经典示例的起源和流传过程。文章还探讨了C语言对其他编程语言的影响,以及它在系统编程中的地位。最后总结了“Hello World”、print、小括号和双引号等编程概念的来源。
106 80
|
2月前
|
存储 索引 Python
Python编程数据结构的深入理解
深入理解 Python 中的数据结构是提高编程能力的重要途径。通过合理选择和使用数据结构,可以提高程序的效率和质量
157 59
|
21天前
|
分布式计算 大数据 数据处理
技术评测:MaxCompute MaxFrame——阿里云自研分布式计算框架的Python编程接口
随着大数据和人工智能技术的发展,数据处理的需求日益增长。阿里云推出的MaxCompute MaxFrame(简称“MaxFrame”)是一个专为Python开发者设计的分布式计算框架,它不仅支持Python编程接口,还能直接利用MaxCompute的云原生大数据计算资源和服务。本文将通过一系列最佳实践测评,探讨MaxFrame在分布式Pandas处理以及大语言模型数据处理场景中的表现,并分析其在实际工作中的应用潜力。
57 2
下一篇
开通oss服务