[oeasy]python0078_设置索引颜色_index_color_ansi_控制终端颜色
更多颜色
回忆上次内容
- 上次 了解了 高亮颜色
- 91-97 是 高亮 前景色
- 101-107是 高亮 背景色

- 颜色种类
- 在原来基础上 增加了一些
- 但也非常有限
- 还想要 更精细的颜色
- 有可能吗??
更多颜色
- 继续深挖
- 关于 逃逸字符的文档
- 可以用 索引颜色
- 那就 是 38;5;索引数字m

- 上图的196、213、160
- 来自于 什么 呢?
索引颜色表
- 索引数字 来自于 索引表

- 这颜色 好多啊
- 记不住 怎么办?
- 或者 可以研究一下
- 这些颜色的 规律?
规则原理

- 0-7 是 标准色
- 原来的30-37
- 8-15 是 高亮色
- 原来的90-97

- 16-231 是 混合色
- r、g、b 都是从 {0,1,2,3,4,5} 的阶梯范围
- 具体的颜色数值
- 来自于
16 + 36*r + 6*g+ b
- 来自于
- 得到数值后 可以显示颜色
- 232-255 是 24级 灰阶色
lolcat
- 回想lolcat这个命令
- 应该是 利用了这些颜色设置

- 有了这个
- 可以制作一个 海蓝色的海龟么 ?
海蓝色的大海龟


- 我想让 海龟变色
- 怎么办?
循环范围

- 索引色值 递增1
- 从 16 到 231
- 现在需要 用python
- 做一个循环
- 遍历 所有的数字
修改



- 索引数字 循环出来了
- 如何 根据索引颜色 设置颜色呢?
设置前景 为 索引颜色

- “\33[38;2;xxxm”
- 设置前景使用xxx号索引色

- 那如何设置背景色呢?
设置背景 为 索引颜色

- 把原来的38改成48
- 就是设置 背景索引色 了

- 能否 让这些字 一个个出来 呢?
- 逐个出现 肯定要用到 延迟
- 不要翻页
- 自己尝试一下
一个个出来
- 逐个出现

- 前景背景颜色有点混同

- 可以让 前景色和背景色
- 互为补色 吗?
设置

利用互补色 有 一定的规律
- 16 + 231 = 247
- 17 + 230 = 247
- 18 + 229 = 247
两者之和 为 247
利用规律

- 运行结果

- 这下颜色多了很多!
- 不过索引颜色
- 还是 不够细腻
- 能直接 设置 RGB 么?
总结
- 这次 首先了解了 索引颜色
- \33[38;5;XXXm 设置 前景为索引色
- \33[48;5;XXXm 设置 背景为索引色
- RGB每种颜色
- 可选0-5
- 总共 6 级

- 想用 精确RGB值
- 真实地 大红色画个 大红桃心 ️
- 有可能吗??
- 我们下次再说!
- 蓝桥->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]python0078_设置索引颜色_index_color_ansi_控制终端颜色的更多相关文章
- Linux终端颜色和标题设置
Linux给人最大的享受就是可以根据个人喜好去定制令自己舒服的系统配置,像终端颜色的设置就是一个典型的例子. 图1 系统默认状态下的终端显示 在没有经过自定义配置的终端下工作久了,难免容易疲劳,因为所 ...
- MacBook设置终端颜色,补全忽略大小写,设置命令别名alias,设置vim,设置显示git分支
1.启用终端颜色 修改配置文件 $ vim .bash_profile #enables colorin the terminal bash shell export export CLICOLOR= ...
- Linux 控制终端转义和控制序列
DESCRIPTION 描述 Linux控制台实现了VT102和ECMA-48/ISO 6429/ANSI X3.64终端控制的子集, 这个子集很庞大,当然还有Linux自己私有的控制序列,以改变颜色 ...
- 【linux命令】setterm控制终端属性命令(中英文)
[linux命令]setterm控制终端属性命令(中英文) 2018年03月23日 17:13:44 阅读数:489 标签: linux 更多 个人分类: linux 摘自:https://blog. ...
- iOS开发中设置UITextField的占位文字的颜色,和光标的颜色
在iOS开发中,对于很多初学者而言,很有可能碰到需要修改UITextField的占位文字的颜色,以及当UITextField成为第一响应者后光标的颜色,那么下面小编就介绍一下修改占位文字和光标的颜色. ...
- ubuntu终端颜色配置
对于刚接触ubuntu的同学们,打开终端(ctrl+alt+T),会发现里面都是一个颜色,不管是用户名.主机名还是命令都是白色,当然,用 ls 列出文件的时候是会多一种颜色的.即使这样,对开发人员来说 ...
- VC编程中如何设置对话框的背景颜色和静态文本颜色
晚上编一个小程序,涉及到如何设置对话框的背景颜色和静态文本颜色.这在VC6.0中本来是一句话就搞定的事.在应用程序类中的InitInstance()函数添加: //设置对话框背景和文本颜色 SetDi ...
- Color.js增强你对颜色的控制
往逝之因 不要低头,皇冠会掉... 可你又没有皇冠 Color.js 增强你对颜色的控制 阅读目录 轻松管理颜色--color.js库 使用color.js Accessor Methods 你该知 ...
- tcgetattr函数与tcsetattr函数控制终端
6.4.4 使用tcgetattr函数与tcsetattr函数控制终端 为了便于通过程序来获得和修改终端参数,Linux还提供了tcgetattr函数和tcsetattr函数.tcgetattr用于 ...
- 进程 、进程组、会话、控制终端之间的关系 (转载 http://blog.csdn.net/yh1548503342/article/details/41891047)
一个进程组可以包含多个进程 进程组中的这些进程之间不是孤立的,他们彼此之间或者存在者父子.兄弟关系,或者在功能有相近的联系. 那linux为什么要有进程组呢?其实提供进程组就是方便管理这些进程.假设要 ...
随机推荐
- webapi添加添加websocket中间件
添加位置 我按照MSDN的例子添加了一个复述客户端响应的中间件.需要注意的时,中间件采用那种方式添加,添加在哪. 哪种方式 我选择创建一条管道分支,只要时ws的连接请求,就转到这个分支 因此,我们需要 ...
- 安装node-sass失败原因及解决办法汇总
node-sass 安装过程 npm 拉下 node-sass包: 根据node版本和node-sass版本拉取对应的binding.node编译器,原因是sass的编译语言比较特殊,需要下载对应版本 ...
- Vue3.0极速入门(三) - 登录demo
Talk is cheap, Show the code · 在完成npm和vue的环境安装,并了解了基本的目录和文件结构以后,直接写一个带登录和首页的demo做示例,快速了解一个vue工程的创建和基 ...
- 010. Jenkins安装与插件管理
jenkins安装 要求安装环境: 内存: 1G以上 cpu: 1核以上 1. 环境准备: 10.0.0.65 jenkins 10.0.0.66 gitlab 官方安装文档: https://jen ...
- Qt-FFmpeg开发-保存视频流裸流(11)
音视频/FFmpeg #Qt Qt-FFmpeg开发-保存视频流裸流 目录 音视频/FFmpeg #Qt Qt-FFmpeg开发-保存视频流裸流 1.概述 2.实现效果 3.FFmpeg保存裸流代码流 ...
- Windows平台git clone文件路径太长报错
问题描述 在Windows下拉取一些比较大的开源项目经常会提示文件路径太长(filename too long),然后死活都不成功 解决办法 1.配置git git config --system c ...
- Visual Studio编程效率提升技巧集(提高.NET编程效率)
前言 本文大姚将为你介绍一些Visual Studio的使用技巧和建议,旨在帮助.NET开发者更加高效地利用Visual Studio进行编程工作.无论你是.NET初学者还是经验丰富的.NET开发者, ...
- Java异常中throw 与throws的区别
throw 与 throws区别 在Java中,throws和throw是两个不同的关键字,它们在异常处理中起着不同的作用. throws关键字: throws用于声明一个方法可能会抛出的异常.当一个 ...
- js随机数 比较运算符
// 生成一个随机数 1 - 100 范围内的随机数 // 大家先记住 JavaScript 生成随机数值的 公式 // 如果要 生成 a - b 范围内的数值 ...
- NET9 提供HybridCache解决分布式缓存中存在的远程链接&序列化带来的性能问题
下面是一个标准的IDistributedCache用例: public class SomeService(IDistributedCache cache) { public async Task&l ...