字体样式 回忆上次内容
  • 上次了解了 一个新的转义模式
  • \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. git cherry-pick合并其它分支的某次提交(commits)到当前分支

    git cherry-pick 可以选择某一个分支中的一个或几个commit(s)来进行操作. 例如,假设我们有个稳定版本的分支,叫v2.0.0,另外还有个开发版本的分支v3.0.0,我们不能直接把两 ...

  2. mysql 5.6 inner join and 慢优化

    慢示例: SELECT o.id FROM o_schoolnotice o INNER JOIN o_schoolnotice_parent p ON o.id = p.noticeid AND p ...

  3. 腾讯redis2.3集群搭建

    环境规划: IP 主机名 组件 配置 备注 192.168.3.81 node1 8核16G 磁盘X2-50G 没有8核16G无法添加服务器 192.168.3.82 node2 cache,prox ...

  4. mongodb常用数据库指令

    通过客户端的命令进入到mongodb服务中 mongo命令进入客户端 show dbs  查看数据库 show tables/show collections 查看集合(查看当前库里面的表) db 查 ...

  5. npm相关命令 npm 自定义脚本命令 自动重启应用

    # 初始化生成package.json文件 npm init -y[不询问] # 查看本项目已安装模块 npm list # 安装模块 npm install 模块名[@版本号 可选]  或  npm ...

  6. 手动解压安装mysql8.0 on windows my.ini

    1.解压"mysql-8.0.24-winx64.zip"到d:\Soft 2.在"D:\Soft\mysql-8.0.24-winx64"目录新建一个my.i ...

  7. 基于redis的选主功能设计

    需求背景 在JAVA应用开发过程中,越来越多的项目采用了微服务架构,而采用微服务架构最直接作用是可以实现业务层解耦,有利于研发团队可以从业务层面进行划分,比如某几个人的小团队负责某几个微服务,总之,从 ...

  8. java redis 短信业务应用

    java redis 短信业务应用 短信业务场景:根据实际业务来通知客户,在短信的MQ中新增字段:是否需要发送短信的标识,短信微服务可以接收到MQ后根据该字段来判断是否发送. 如果发送端MQ的事件的操 ...

  9. 关于error: failed to push some refs to如何解决

    Smiling & Weeping ---- 在你的门前,我堆起一个雪人,代表笨拙的我,把你久等 常见的错误报错内容基本都是error: failed to push some refsto' ...

  10. 《最新出炉》系列入门篇-Python+Playwright自动化测试-51- 字符串操作 - 上篇

    1.简介 在日常的自动化测试工作中进行断言的时候,我们可能经常遇到的场景.从一个字符串中找出一组数字或者其中的某些关键字,而不是将这一串字符串作为结果进行断言.这个时候就需要我们对字符串进行操作,宏哥 ...