字体样式

回忆上次内容

  • m 可以改变字体样式

    • 0-10 之间设置的都是字体效果

  • 0 复原
  • 1 变亮
  • 2 变暗

  • 从3到10 又是什么效果 呢??
  • 真的可以blink闪烁吗?

3m

  • 3m 实现斜体字的效果

4m

  • 4m 对应着下划线

控制范围

  • 通过控制字符串的位置

    • 可以控制效果范围
print("\033[0mthis is an \033[4manchor\033[0m")
print("\033[0mthis is \033[4man anchor\033[0m")
print("\033[0mthis is\033[4m an anchor\033[0m")
  • 标准输出流中的 所有文字

    • 都可以 控制样式
  • 属性可以叠加吗?

属性叠加

  • 先变亮(\033[1m)、再加下划线(\033[4m)
  • 先加下划线(\033[4m)、再变亮(\033[1m)
  • 效果一样

  • 可以 交换次序

  • 变暗 也可以 与下划线叠加
  • 可以 简化控制序列 吗?

简化写法

  • 合并同类项

    • 把需要加的标记 进行汇总
    • 用;做为分割符

  • 这套规则 来自于什么 呢?

VT100

  • 规则来自于 终端一代神机

    • DEC 的 VT100
    • 下图为 VT100 说明书

  • 很多东西 都可以 从VT100看出端倪

    • 八进制转义
    • ESC
    • 分号分隔符
  • 4m是 下划线
  • 5m呢?

继续尝试

  • 5m、6m 本应是

    • 快闪、慢闪

  • 但是 现在看起来 效果是一样的

    • 可以 编程实现 快闪效果吗?
    • 动手试试

快闪

  • 编码
import time
for i in range(1000):
if i % 2 == 0:
print("\roeasy",end="")
else:
print("\r ",end="")
time.sleep(0.2)
  • 再往后看看

7m

  • 7m 是反相

    • 把前景和背景色交换

  • 黑变白
  • 白变黑

  • 颠倒黑白

8m

  • 8m对应隐藏

  • 隐藏比较复杂

    • 因为完全看不见了

9m

  • 9m对应中划线

  • 划掉

  • 不喜欢的统统划掉

字体设置

  • 10-19 定义为字体设置

    • 但是 实际上 没有效果

20-29

  • 20-29

    • 20 设置字体
    • 21-29部分和1-9一一对应
      • 是取消相应的效果

  • 1是变亮

    • 21 是取消变亮
  • 2是变暗
    • 22 是取消变暗
  • 23-29
    • 取消 3-9 的字体效果
  • 0 是全部取消

效果

  • 0m 确实可以清除此后所有的样式

  • 29m 可以专门地清除

    • 此后的 中划线样式
  • 但如果一开始的时候
    • 既有中划线样式
    • 又高亮
    • 会如何呢?

专门清除

  • 注意后面hate you 部分

    • 取消了下划线样式
    • 但没有取消高亮样式

  • 除非 控制序列的 新要求

    • 否则 标准输出流
    • 会一直保持 各种字体样式
  • 那么29m以后
    • 控制的又是什么呢?

29m以后

  • 居然好像真的是颜色设置了

    • 前景色
    • 背景色

  • 可以搞点 好玩的 东西啦!!!

总结

  • m 可以改变字体样式

    • 0-9 之间设置的都是字体效果
    • 0 重置为默认
    • 1 变亮
    • 2 变暗
    • 3 斜体
    • 4 下划线
    • 5 慢闪
    • 6 快闪
    • 7 前景背景互换
    • 8 隐藏
    • 9 中划线
  • 叠加效果
    • \33[1;3moeasy
    • ;分割
  • 取消效果
    • 21 取消 1
    • 22 取消 2
    • 23 取消 3
    • 一直到 29
    • 0 是全部取消,回到默认

  • 最后发现

    • 真的可以 设置颜色???
  • 我们下次再说!
  • 蓝桥->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

[oeasy]python0070_ 字体样式_下划线_中划线_闪动效果_反相_取消效果的更多相关文章

  1. WPF编程,TextBlock中的文字修饰线(上划线,中划线,基线与下划线)的使用方法。

    原文:WPF编程,TextBlock中的文字修饰线(上划线,中划线,基线与下划线)的使用方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_4330 ...

  2. WPF中的文字修饰——上划线,中划线,基线与下划线

    原文:WPF中的文字修饰——上划线,中划线,基线与下划线 我们知道,文字的修饰包括:空心字.立体字.划线字.阴影字.加粗.倾斜等.这里只说划线字的修饰方式,按划线的位置,我们可将之分为:上划线.中划线 ...

  3. UILabel,文字添加下划线,中划线

    //显示下划线 //中划线 //        NSDictionary *attribtDic = @{NSStrikethroughStyleAttributeName: [NSNumber nu ...

  4. 多种方法在Markdown加入上划线、中划线、下划线

    上划线和下划线不是Markdown自身语法,因此需要一点摸索,特将结果记录于此 1.中划线 中划线是markdown自身语法,实现起来很简单: ~~中划线~~ 实现的效果如下: 中划线 2.下划线 2 ...

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

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

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

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

  7. css 字体样式设置

    css字体样式(Font Style),属性 时间:2014-05-08 21:49 来源:我爱学习网 | 作者:我爱学习网 | 本文已影响 68353 人   css字体样式(Font Style) ...

  8. golang _下划线占位符代替需要释放的资源的问题

    golang中_有两种作用,一种用在import中,比如这样 import _ "github.com/go-sql-driver/mysql" 表示并不需要导入整个包,只是执行这 ...

  9. Scala中_(下划线)的常见用法

    Scala中_(下划线)的常见用法 地址:https://www.jianshu.com/p/0497583ec538

  10. _ 下划线 vue mixins 混入 变量前有下划线 变量不起作用

    _ 下划线 vue mixins 混入 变量前有下划线 变量不起作用

随机推荐

  1. HTML——input标签

    很多表单元素都是由一个个的 input 元素组成的.它是自闭合标签,根据其 type 属性值的不同分为很多种,例如单行文本框.密码框.单选按钮.复选框.隐藏域.文件上传域.普通按钮.提交按钮以及重置按 ...

  2. NOIP模拟56

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

  3. ansible搭建

    ansible配置步骤 1.创建用户 2.用户提权 3.用户免密 4.cp ansible配置文件 5.配置主机清单 6.修改ansible 用户路径下的配置文件 1.创建用户(都要做) [root@ ...

  4. pands基础--数据结构:Series

    从本文开始介绍pandas的相关知识. pandas含有是数据分析工作变得更快更简单的高级数据结构和操作工具,是基于numpy构建的. 本章节的代码引入pandas约定为:import pandas ...

  5. ETL工具-nifi干货系列 第十四讲 nifi处理器PublishKafka实战教程

    1.kettle的kafka生产者叫kafka producer,nifi中的相应处理器为PublishKafka,如下图所示: 可以很清楚的看到PublishKafka处理器支持多个版本的kafka ...

  6. Prometheus 14 点实践经验分享

    这是 2017 年的 promcon 的分享,原文地址在这里,作者 Julius Volz,今天偶然看到,虽然已经过去 6 年,有些实践经验还是非常值得学习.做个意译,加入一些自己的理解,分享给大家. ...

  7. docker容器单机编排

    随着网站架构的升级,容器也使用的越发频繁,应用服务和容器间的关系也越发复杂. 这就要求研发人员能够更好的方法去管理数量较多的容器服务,而不能手动的去挨个管理. 例如一个LNMP的架构,就得部署web服 ...

  8. 根据两个日期之间获取LocalDate日历列表和LocalDate和LocalDateTime数据格式转换

    根据两个日期之间获取LocalDate日历列表和LocalDate和LocalDateTime数据格式转换 package com.example.core.mydemo.localdatetime; ...

  9. OOM异常的4种可能分析及常见的OOM异常演示

    OOM异常的4种可能分析及常见的OOM异常演示 OOM异常: OutOfMemoryError 1.JAVA堆溢出JAVA堆用于存储对象实例,只要不断的创建对象,并且保证GC Roots到这些对象之间 ...

  10. python selenium UI自动化操作iframe及返回默认页面

    页面操作的场景:进到到页面A,选择页面A里面的记录,点击签约, 弹出一个弹窗B,弹窗B的内容是协议及同意按钮或其他非同意的提示信息,主要的操作,打开页面A,点击签约,点击同意,操作完成 分析页面的组成 ...