字体样式 回忆上次内容
  • 上次了解了 一个新的转义模式
  • \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. 【c#】JavaScriptSerializer 不序列化null值

    首先引用dll :System.Web.Extensions. 再自定义转换器代码如下: public class JavaScriptSerilizeConvert : JavaScriptConv ...

  2. FreeSWITCH使用soundtouch进行变声

    操作系统 :CentOS 7.6_x64 FreeSWITCH版本 :1.10.9   FreeSWITCH里面有个mod_soundtouch模块,支持通话实时变声,今天整理下CentOS 7环境下 ...

  3. vsftp配置使用

    vsftp简介: VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全. 安全性是编写VSFT ...

  4. vue3组件通信与props

    title: vue3组件通信与props date: 2024/5/31 下午9:00:57 updated: 2024/5/31 下午9:00:57 categories: 前端开发 tags: ...

  5. makedown快速入门

    Makedown学习 Makedown 作为一个强大文本编辑语言,学习并熟悉应用是写好一篇优秀博客的基础 那么接下来我将介绍makedown语言最常用的几个语法 标题 +"space&quo ...

  6. NOIP模拟56

    前言 话说, T2 和 T3 的题面好像放反了. T1 爆零 解题思路 是个原题.. 当时 WindZR 25分钟就码完了,然后我就慌死,写完就开始调,诶,我当时场上不是切了吗,怎么现在打不对了.. ...

  7. 事件对象的属性 div点击移动事件

       // 事件对象的相关属性         // e.target   触发事件的标签对象         //            e.target支持所有标签对象的操作         // ...

  8. 在阿里云WINDOWS机器上部署的JAVA SpringBoot 时不时的无效 。

    用telnet 能通.但代码的HTTP 访问不了. 解决方法,在运行时加-Dserver.address=0.0.0.0,让它监听所有: java -Dserver.address=0.0.0.0 - ...

  9. Math.ceil,Math.round,Math.floor区别

    Math.ceil,Math.round,Math.floor区别 //向上取整 System.out.println("amt1=" + Math.ceil(71.01)); / ...

  10. 反模式 DI anti-patterns

    反模式 DI anti-patterns 反模式DI anti-patterns <Dependency Injecttion Prinsciples,Practices, and Patter ...