[oeasy]python0078_设置索引颜色_index_color_ansi_控制终端颜色

简介: [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
目录
相关文章
|
10天前
|
Rust JavaScript 前端开发
[oeasy]python075_什么是_动态类型_静态类型_强类型_弱类型_编译_运行
本文探讨了编程语言中的动态类型与静态类型、强类型与弱类型的概念。通过实例分析,如Python允许变量类型动态变化(如`age`从整型变为字符串),而C语言一旦声明变量类型则不可更改,体现了动态与静态类型的差异。此外,文章还对比了强类型(如Python,不允许隐式类型转换)和弱类型(如JavaScript,支持自动类型转换)的特点。最后总结指出,Python属于动态类型、强类型语言,对初学者友好但需注意类型混淆,并预告下期内容及提供学习资源链接。
48 21
|
8天前
|
Python Windows
[oeasy]python076_int这个词怎么来的_[词根溯源]整数类型_int_integer_touch
本文探讨了“int”一词的起源及其与整数类型的关联。通过词根溯源,揭示“int”来源于“integer”,意为“完整的数”,与零碎的分数相对。同时分析了相关词汇如“tact”(接触)、“touch”(触摸)及衍生词,如“tangential”(切线的)、“intagible”(无形的)和“integral”(完整的、不可或缺的)。文章还结合编程语言特性,解释了Python作为动态类型、强类型语言的特点,并总结了整型变量的概念与意义。最后预告了后续内容,提供了学习资源链接。
38 11
|
4天前
|
存储 C语言 Python
[oeasy]python077_int类型怎么用_整数运算_integer_进制转化_int类
本文主要讲解了Python中`int`类型的应用与特性。首先回顾了`int`词根的溯源,探讨了整型变量的概念及命名规则(如匈牙利命名法)。接着分析了整型变量在内存中的存储位置和地址,并通过`type()`和`id()`函数验证其类型和地址。还介绍了整型变量的运算功能,以及如何通过`int()`函数将字符串转化为整数,支持不同进制间的转换(如二进制转十进制)。此外,文章提及了关键字`del`的使用场景,对比了Python与C语言中`int`的区别,并总结了整型与字符串类型的差异,为后续深入学习奠定基础。
22 1
|
2月前
|
人工智能 Shell 开发工具
[oeasy]python062_在python中完成输入和输出_input_print
本文介绍了在Python中使用`input()`和`print()`函数完成输入和输出操作的基础知识。通过编写简单的程序,如问候用户和统计苹果数量,演示了如何添加提示信息、处理用户输入并输出结果。同时,回顾了上一次课程内容,包括`input`函数的参数和提示词的使用。文中还展示了如何在vim编辑器中编写和运行Python代码,并对vim和shell的基本操作进行了总结。最后提供了相关学习资源链接,方便读者进一步学习。
163 66
|
11天前
|
Python
[oeasy]python074_ai辅助编程_水果程序_fruits_apple_banana_加法_python之禅
本文回顾了从模块导入变量和函数的方法,并通过一个求和程序实例,讲解了Python中输入处理、类型转换及异常处理的应用。重点分析了“明了胜于晦涩”(Explicit is better than implicit)的Python之禅理念,强调代码应清晰明确。最后总结了加法运算程序的实现过程,并预告后续内容将深入探讨变量类型的隐式与显式问题。附有相关资源链接供进一步学习。
24 4
|
17天前
|
Shell Python
[oeasy]python072_名字空间是怎么玩的_from_import_as_导入_namespace
本文介绍了Python中名字空间和模块导入的使用方法。主要内容包括: 1. **回忆上次内容**:回顾了之前导入系统模块(如`__hello__`、`time`)和自定义模块(如`my_file`),并介绍了如何导入和使用模块中的变量。 2. **从shell开始**:展示了如何在命令行中编辑和切换文件,以及如何通过`import`语句引入模块。 3. **修改oeasy.py**:演示了如何通过`import my_file`导入模块,并将模块中的`pi`赋值给本地变量`pi`。 4. **locals()函数**:解释了如何使用`locals()`查看当前作用域内的本地变量及其值。
29 8
|
15天前
|
Python
[oeasy]python073_下划线在python里是什么含义_内部变量_私有变量_系统变量
本文回顾了Python中从模块导入变量和函数的方式,重点讨论了避免本地变量名冲突(local name clashes)的方法。通过`from module import variable as alias`可以为导入的变量重命名,防止冲突。根据PEP8规范,建议避免使用`from module import *`,因为它会导入模块中所有非下划线开头的变量,容易引发冲突。下划线在变量命名中有特殊含义:单个前导下划线表示内部变量,后置下划线用于避免与关键字冲突,双下划线前后包围表示系统变量。总结了下划线的不同用法及其作用。下次将继续探讨更实用的编程技巧。
30 3
|
1月前
|
人工智能 Shell 开发工具
[oeasy]python065python报错怎么办_try_试着来_except_发现异常
本文介绍了Python中处理异常的基本方法,重点讲解了`try`和`except`的用法。通过一个计算苹果重量的小程序示例,展示了如何捕获用户输入错误并进行处理。主要内容包括: 1. **回顾上次内容**:简要回顾了Shell环境、Python3游乐场和Vim编辑器的使用。 2. **编写程序**:编写了一个简单的程序来计算苹果的总重量,但发现由于输入类型问题导致结果错误。 3. **调试与修正**:通过调试发现输入函数返回的是字符串类型,需要将其转换为整数类型才能正确计算。
60 32
|
27天前
|
人工智能 自然语言处理 Shell
[oeasy]python070_如何导入模块_导入模块的作用_hello_dunder_双下划线
本文介绍了如何在Python中导入模块及其作用,重点讲解了`__hello__`模块的导入与使用。通过`import`命令可以将外部模块引入当前环境,增强代码功能。例如,导入`__hello__`模块后可输出“Hello world!”。此外,还演示了如何使用`help()`和`dir()`函数查询模块信息,并展示了导入多个模块的方法。最后,通过一个实例,介绍了如何利用`jieba`、`WordCloud`和`matplotlib`模块生成词云图。总结来说,模块是封装好的功能部件,能够简化编程任务并提高效率。未来将探讨如何创建自定义模块。
38 8
|
1月前
|
数据库 Python
[oeasy]python066_如何捕获多个异常_try_否则_else_exception
本文介绍了Python中`try...except...else`结构的使用方法。主要内容包括: 1. **回顾上次内容**:简要复习了`try`和`except`的基本用法,强调了异常处理的重要性。 2. **详细解释**: - `try`块用于尝试执行代码,一旦发现错误会立即终止并跳转到`except`块。 - `except`块用于捕获特定类型的异常,并进行相应的处理。 - `else`块在没有异常时执行,是可选的。 3. **示例代码**:通过具体例子展示了如何捕获不同类型的异常(如`ValueError`和`ZeroDivisionError`),并解释了异常处理
58 24