前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[oeasy]python0070_ 字体样式_下划线_中划线_闪动效果_反相_取消效果

[oeasy]python0070_ 字体样式_下划线_中划线_闪动效果_反相_取消效果

原创
作者头像
oeasy
发布2023-02-02 17:45:25
1.1K0
发布2023-02-02 17:45:25
举报

字体样式

回忆上次内容

  • m 可以改变字体样式
    • 0-10 之间设置的都是字体效果
图片描述
图片描述
  • 0 复原
  • 1 变亮
  • 2 变暗
图片描述
图片描述
  • 从3到10 又是什么效果 呢??
  • 真的可以blink闪烁吗??

3m

图片描述
图片描述
  • 3m 实现斜体字的效果

4m

图片描述
图片描述
  • 4m 对应着下划线
图片描述
图片描述

控制范围

图片描述
图片描述
  • 通过控制字符串的位置
    • 可以控制效果范围
代码语言:javascript
复制
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 本应是
    • 快闪、慢闪
图片描述
图片描述
  • 但是 现在看起来 效果是一样的
    • 可以 编程实现 快闪效果吗?
    • 动手试试

快闪

图片描述
图片描述
  • 编码
代码语言:javascript
复制
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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 字体样式
    • 回忆上次内容
      • 3m
      • 4m
      • 控制范围
      • 属性叠加
      • 简化写法
      • VT100
      • 继续尝试
      • 快闪
      • 7m
      • 8m
      • 9m
      • 字体设置
      • 20-29
      • 效果
      • 专门清除
      • 29m以后
    • 总结
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
    http://www.vxiaotou.com