[oeasy]python0068_控制序列_清屏_控制输出位置_2J

简介: [oeasy]python0068_控制序列_清屏_控制输出位置_2J

光标位置

回忆上次内容

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

  • ESC 的目的
  • 是进入控制序列
  • 配置控制信息
  • 控制信息
  • \033[y;xH 设置光标位置
  • \033[2J 清屏
  • 这到底怎么控制来着???🤔
  • 现在 系统里
  • 这些行为 是来实现的呢?

控制

  • 是由 gui系统中
  • 终端软件 来实现的
  • 具体来说就是
  • xfce terminal

输出字符

  • \033是转义序列
  • \33\033的省略写法
  • 33 是 8 进制数形态的ord(“\e”)
  • 也可以 写成 16进制形态
  • \x1b
print("\033[2J")
  • J 是模式选择
  • 清屏模式
  • 分为四种清屏
  • 0J - 从光标清到屏幕结束
  • 1J - 从光标清到屏幕开头
  • 2J - 整屏幕清
  • 3J - 整屏幕清并选择清空滚动缓存

  • 2J 是 整屏幕清

观察环境

  • 进入vi 观察屏幕大小

  • 终端屏幕默认 80*24 (字符)

设置光标

  • \33[ 是CSI
  • 控制序列前导符
print("\33[1;1Hoeasy")
  • 1;1 指的是
  • 屏幕左上角
  • 终端大小
  • 横向80字符
  • 纵向24字符
  • 中间用分隔符是分号(😉
  • 设置好了 之后
  • 输出 后面的字符 oeasy
  • H 是模式选择

  • 可以先清屏再输出么?

清屏并设置光标

print("\33[2J")
print("\33[1;1Hoeasy")
  • 这是两句话
  • 完成两件事
  • 2J清屏
  • 1;1H设置输出位置
  • 两句话可以合并成一句吗?

合并输出

  • “\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
  • 这就是esc的作用

escape

  • 从当前输出序列中退出来
  • 进行控制信息的输出

  • 看起来很像安全逃生出口

总结

  • 这次了解了一个新的转义模式
  • \33 逃逸控制字符 esc
  • 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
目录
相关文章
|
12天前
|
存储 算法 数据挖掘
【2023年中国高校大数据挑战赛 】赛题 B DNA 存储中的序列聚类与比对 Python实现
本文介绍了2023年中国高校大数据挑战赛赛题B的Python实现方法,该赛题涉及DNA存储技术中的序列聚类与比对问题,包括错误率分析、序列聚类、拷贝数分布图的绘制以及比对模型的开发。
26 1
【2023年中国高校大数据挑战赛 】赛题 B DNA 存储中的序列聚类与比对 Python实现
|
12天前
|
机器学习/深度学习 数据采集 算法
【优秀python算法毕设】基于python时间序列模型分析气温变化趋势的设计与实现
本文介绍了一个基于Python的时间序列模型,用于分析和预测2021-2022年重庆地区的气温变化趋势,通过ARIMA和LSTM模型的应用,揭示了气温的季节性和趋势性变化,并提供了对未来气温变化的预测,有助于气象预报和相关决策制定。
【优秀python算法毕设】基于python时间序列模型分析气温变化趋势的设计与实现
|
1天前
|
程序员 开发工具 Python
[oeasy]python0030_动态控制断点_breakpoints_debug_调试
[oeasy]python0030_动态控制断点_breakpoints_debug_调试
6 2
|
13天前
|
算法 Python
【Leetcode刷题Python】剑指 Offer 33. 二叉搜索树的后序遍历序列
本文提供了一种Python算法,用以判断给定整数数组是否为某二叉搜索树的后序遍历结果,通过识别根节点并递归验证左右子树的值是否满足二叉搜索树的性质。
11 3
|
13天前
|
Python
【Python】如何判断时间序列数据是否为平稳时间序列或非平稳时间序列?
本文介绍了如何通过观察均值和方差的变化、ADF单位根检验、KPSS检验以及差分操作来判定时间序列数据是否为平稳或非平稳,并提供了Python代码示例进行实际检验。
26 0
【Python】如何判断时间序列数据是否为平稳时间序列或非平稳时间序列?
|
13天前
|
数据采集 算法 数据挖掘
【2023 年第二届钉钉杯大学生大数据挑战赛】 初赛 B:美国纽约公共自行车使用量预测分析 问题三时间序列预测Python代码分析
本文介绍了2023年第二届钉钉杯大学生大数据挑战赛初赛B题的Python代码分析,涉及美国纽约公共自行车使用量的时间序列预测、网络分析和聚类分析。
22 0
【2023 年第二届钉钉杯大学生大数据挑战赛】 初赛 B:美国纽约公共自行车使用量预测分析 问题三时间序列预测Python代码分析
|
8天前
|
程序员 Shell 开发工具
[oeasy]python029_ until_直接跳转到_unt_breakpoint_断点函数
回顾早期计算机操作员多为女性,她们甚至发明了“bug”这个词。为了体验调试过程,我们故意在Python脚本中引入了一个拼写错误,并通过直接运行程序遇到了`NameError`。 通过`until`命令,我们可以快速跳转到指定行执行,这对于大型项目非常有用。此外,`continue`(或简写`c`)命令则会一直执行到下一个断点或程序结束。我们还可以在代码中使用`breakpoint()`设置断点,配合`continue`命令使用,实现快速跳转至特定位置进行调试。 这些技巧使调试过程变得高效且有趣,如同解开谜题一般。下次我们将探讨如何在调试过程中动态设置与取消断点。
18 0
|
14天前
|
Python
【Leetcode刷题Python】674. 最长连续递增序列
LeetCode 674题 "最长连续递增序列" 的Python解决方案,使用动态规划算法找出给定整数数组中最长连续递增子序列的长度。
33 0
|
18天前
|
存储 索引 Python
Python中序列类型 (Sequence Types)
【8月更文挑战第2天】
19 4
|
存储 算法 BI
【100天精通python】Day6:python基础_基本数据结构,常用序列类型和运算符
【100天精通python】Day6:python基础_基本数据结构,常用序列类型和运算符
118 0