字体样式 回忆上次内容
  • 上次了解了 一个新的转义模式
  • \033 逃逸控制字符 esc
 
  • esc 让输出
  • 退出 标准输出流
  • 进行 控制信息的设置
  • 可以 清屏
  • 也可以 设置光标输出的位置
 
 
  • 还能做什么呢?
  • 可以 设置 字符的颜色吗???
 

 
添加图片注释,不超过 140 字(可选)
查看细节
  • 回忆
  • 控制序列 前导符\033[
 
  • \是转义字符
  • 要和 后面的内容
  • 一起 构成转义序列
 
 
  • \033 是转义序列
  • 转义转义
  • 转化含义
  • 转义序列\033对应的 字符含义 是Escape
  • 从标准输出流 逃逸 出去
 
 
  • 输出字符串时
  • 出现了 Escape后
  • 能逃去到 哪里 呢?
 
  • 从 输出的字符串中 Escape 出去
  • 后面的内容 不是纯文本了
  • 而是 控制序列(Control Sequence)
 
具体控制
  • \033[ 是 CSI
  • Control Sequence Introducer
  • 控制序列前导符
 

 
添加图片注释,不超过 140 字(可选)
 
  • CSI n m
  • CSI 之后的是ansi给的关于字体样式的设置细节
 
  • 上图中的 n 对应
  • 0-10的一个数字
 
  • 上图中的m 说明
  • 这是 要进行 外观设置
  • 选择图形渲染 参数
  • SGR (Select Graphic Rendition) parameters
 
 
  • 上次
  • 用H 控制位置
 
  • 这次
  • 用 m 控制外观
 
  • 具体怎么控制外观呢?
具体设置
  • 从1m 到10m

 
添加图片注释,不超过 140 字(可选)
 
  • 动手试试
1m、0m
  • 结构是 \033[1m
  • \033是逃逸字符
  • 1 对应着 增亮或变粗
  • 0 对应着 还原
  • m 是 固定的格式要求
 

 
添加图片注释,不超过 140 字(可选)
 
  • 好像颜色 是有点 不一样

 
添加图片注释,不超过 140 字(可选)
 
  • 我可以 把\033 简化为 \e 么?
  • 实践 出 真知
尝试\e
  • python游乐场中不能用\e

 
添加图片注释,不超过 140 字(可选)
 
  • 结论
  • \033 可以进入 字体控制模式
  • \e 目前 在python中 不支持
 
  • 但是 在shell中 呢?
在shell中
  • 在shell中
  • echo命令 支持\e
 

 
添加图片注释,不超过 140 字(可选)
 
  • python游乐场 中
  • 不支持"\e"
  • 只支持"\033"
 
2m

 
添加图片注释,不超过 140 字(可选)
 
  • 2 和 1 相反
  • 1m 更亮
  • 2m 更暗
  • 0m 还原
 

 
添加图片注释,不超过 140 字(可选)
 
  • 一会儿亮
  • 一会儿暗
 
  • 好像 挺好玩的
编写程序
  • 编辑一个py文件
  • 注意
  • 文件名 不能是time.py
  • 因为 我们要引入的包 叫做time
  • time.py 会让 python3 引入自己
 
 
import time for i in range(100): csi = "\033[" color = str(i % 3) print(csi + color + "moeasy") time.sleep(0.2)
  • i%3 是让 i对3取余
  • 得到0、1、2三种可能
 
代码

 
添加图片注释,不超过 140 字(可选)
 
  • i 从1到100
  • color在"0"、"1"、"2"中 循环
  • 设置文字在"正常"、"亮"、"暗"中 循环
 
  • 冷却时间是 0.2s
 

 
添加图片注释,不超过 140 字(可选)
 
  • 规律性很强
  • 其实 通过亮和暗
  • 可以得到 更好玩的东西
 
bb
  • 可以 看看bb 这个应用
  • 在shell中 安装bb
 
sudo apt install bb
  • 键入 bb 直接运行
  • bb里面 用字符画风格
  • 实现 三维旋转
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 应该是 视频按帧 转化过来的
  • 很好玩!
 
  • 可以 引入随机吗?
引入随机
  • 进入python游乐场
import random help random
  • 先看看帮助文档

 
添加图片注释,不超过 140 字(可选)
 
  • random.random() 在 [0,1) 之间

 
添加图片注释,不超过 140 字(可选)
 
  • random.random()*2 在 [0,2) 之间
  • int(random.random()*2) 得到 整数
  • {0,1}
  • (0 或者 1)
 
 
随机翻倍
  • 想要让屏幕显示
  • 0或者1
 

 
添加图片注释,不超过 140 字(可选)
 
  • random.random() 在 (0,1) 之间
  • random.random()*2 在 [0,2) 之间
 
  • 再用int函数取整
  • 得到 {0, 1}
  • (0 或 1)
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 颜色的值 可以是
  • {0, 1, 2}
  • (0 或 1 或 2)
 
  • 这又应该如何取得呢?
乱序
  • 编辑一个py文件
  • 注意文件名不能是
  • time.py
  • random.py
 
 
import time import random while True: csi= "\033[" color = int(random.random()*3) num = int(random.random()*2) print(csi + str(color) + "m" + str(num),end="")
  • 数字是
  • 0 或 1
 
  • 颜色是
  • 亮 \33[1m
  • 正常 \33[0m
  • 暗 \33[2m
 
效果
  • 这下确实 乱了起来

 
添加图片注释,不超过 140 字(可选)
 
  • 而且是
  • 毫无规律地
  • 乱了起来
 
 
纷乱 乱花渐欲迷人眼 浅草才能没马蹄

 
添加图片注释,不超过 140 字(可选)
 
  • 视觉表象看起来
  • 确实很乱
 
  • 想要 总结规律
  • 就要从视觉中抽象出来
 
总结
  • \033 xm 可以改变字体样式
  • 0m - 10m 之间设置的 都是字体效果
  • 0m 复原
  • 1m 变亮
  • 2m 变暗
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 从3m到10m
  • 又是什么效果 呢??
 

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


 

[oeasy]python0083_[趣味拓展]字体样式_正常_加亮_变暗_控制序列的更多相关文章

  1. 2020年12月-第02阶段-前端基础-CSS字体样式

    CSS字体样式属性调试工具 应用 使用css字体样式完成对字体的设置 使用css外观属性给页面元素添加样式 1.font字体 1.1 font-size:大小 作用: font-size属性用于设置字 ...

  2. 学习微信小程序之css4设置颜色,单位表示,字体样式

    颜色的设置可以通过RGB设置 可以直接通过英文单词设置 可以通过16进制来设置 长度单位: 字体样式: 设置字体样式 字体粗细 设置字体风格 设置字间距

  3. css3中的字体样式

    text-overform:ellipsis省略号/clip裁剪. overform:hidden溢出隐藏文字. 但是text-overflow只是用来说明文字溢出时用什么方式显示,要实现溢出时产生省 ...

  4. CSS3初学篇章_3(属性选择符/字体样式/元素样式)

    属性选择符  选择符  说明  E[att]  选择具有att属性的E元素.  E[att="val"]  选择具有att属性且属性值等于val的E元素.  E[att~=&quo ...

  5. css字体样式(Font Style),属性

    css字体样式(Font Style),属性   css字体样式(Font Style)是网页中不可或缺的样式属性之一,有了字体样式,我们的网页才能变得更加美观,因此字体样式属性也就成为了每一位设计者 ...

  6. 【Android】 TextView设置个别字体样式

    SpannableString msp = new SpannableString("测试"+XM+"更换当前号码将从手机发送一条普通短信进行验证"); msp ...

  7. Asp.net 字体样式

    在页面中使用到字体样式  “微软雅黑“,在静态页面中显示正常,但在asp.net页面中字体无效,此时只需把字体修改为“Microsoft YaHei";

  8. 详解CSS设置默认字体样式

    浏览器默认的样式往往在不同的浏览器.不同的语言版本甚至不同的系统版本都有不同的设置,这就导致如 果直接利用默认样式的页面在各个浏览器下显示非常不一致,于是就有了类似YUI的reset之类用来尽量重写浏 ...

  9. css中的字体样式及元素样式

    css中的字体样式一般包含有就9中,常见的有7种.这7种依次为: 1.字体样式:font-family: 2.字体大小:font-size: 3.字体加粗:font-weight: 4.字体斜体:fo ...

  10. Material 字体样式与排版

    Material 字体样式与排版 Google Material 设计规范文档 Style– Typography 字号 再好的布局也会被过多的字号和样式会毁掉.要规定好在这个布局上合适的 字号集合 ...

随机推荐

  1. sass 混合指令 (Mixin Directives)详解

    ​ 混合指令(Mixin)用于定义可重复使用的样式,避免了使用无语意的 class,比如 .float-left.混合指令可以包含所有的 CSS 规则,绝大部分 Sass 规则,甚至通过参数功能引入变 ...

  2. ffmpeg之视频(avc+aac)无损转mp4(批处理,拖放)

    很多能够无损转视频的工具都来自命令行的ffmpeg版本,本文将介绍如何简单的批处理方法(直接拖放到bat文件上)来实现无损转视频. 工具/原料 ffmpeg(默认的static版本) 方法/步骤   ...

  3. Abp vNext 框架 文章

    http://www.vnfan.com/helinbin/tag/Abp%20vNext框架/

  4. .NET程序对接 OpenTelemetry logs

    OpenTelemetry 简介 OpenTelemetry 是一个由 CNCF(Cloud Native Computing Foundation)托管的开源项目,旨在为观察性(Observabil ...

  5. Java爬虫-爬取疫苗批次信息

    今年3月份开始,就接到通知, 根据<关于开展有关人群第二剂次脊髓灰质炎灭活疫苗补种工作的通知>国疾控卫免发[2024]1号文件要求,在2016年3月1日至2019年9月30日之间出生的儿童 ...

  6. 通过USB口扩展wan口上网(4G上网卡)

    通过USB口扩展wan口上网(4G上网卡) 一.前言 现爱快可支持通过USB口扩展wan口上网,不再居于地点的限制,随时随地流畅上网. 二.具体配置 现在有两种设备可以实现通过USB口转化为wan口上 ...

  7. kettle从入门到精通 第五十一课 ETL之kettle Avro input

    1.我们在学习nifi的过程中有接触到Avro schema,当时我在想kettle应该也支持Avro,果不其然kettle也是支持Avro文件的读和写的.今天我们一起来学习下kettle中如何使用A ...

  8. 一文搞懂 ARM 64 系列: 寄存器

    ARM 64中包含多种寄存器,下面介绍一些常见的寄存器. 1 通用寄存器 ARM 64包含31个64bit寄存器,记为X0~X30. 每一个通用寄存器,它的低32bit都可以被访问,记为W0~W30. ...

  9. Linux扩展篇-shell编程(五)-流程控制(一)-if语句

    基本语法: (1)单分支 if [ condition ];then statement(s) fi 或 if [ condition ] then statement(s) fi (2)多分支 if ...

  10. Oracle使用序列和触发器设置自增字段

    一.创建一张工作表 例: create table tv(ID NUMBER primary key,TVNAME VARCHAR(16),ISPASS NUMBER);   二.先创建一个序列 cr ...