[oeasy]python0085_[趣味拓展]字体样式_下划线_中划线_闪动效果_反相_取消效果

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
实时计算 Flink 版,5000CU*H 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
简介: [oeasy]python0085_[趣味拓展]字体样式_下划线_中划线_闪动效果_反相_取消效果

字体样式 回忆上次内容

  • \033 xm 可以改变字体样式
  • 0m - 10m 之间设置的 都是字体效果
  • 0m 复原
  • 1m 变亮
  • 2m 变暗



添加图片注释,不超过 140 字(可选)

  • 从3m到10m
  • 又是什么效果 呢??


添加图片注释,不超过 140 字(可选)

  • 真的可以
  • 让文字 blink闪烁吗?👁


3m

添加图片注释,不超过 140 字(可选)

  • 3m 实现斜体字的效果

4m

添加图片注释,不超过 140 字(可选)

  • 4m 对应着下划线

添加图片注释,不超过 140 字(可选)

控制范围 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")

  • 通过控制字符串的位置
  • 可以控制效果范围


添加图片注释,不超过 140 字(可选)

  • 标准输出流中的 所有文字
  • 都可以 控制样式


  • 属性可以叠加吗?

属性叠加

  • 可以 交换次序
  • 先变亮(\033[1m)、再加下划线(\033[4m)
  • 先加下划线(\033[4m)、再变亮(\033[1m)
  • 效果一样


添加图片注释,不超过 140 字(可选)

  • 变暗 也可以 与下划线叠加

添加图片注释,不超过 140 字(可选)

  • 可以 简化控制序列 吗?

简化写法

  • 合并同类项
  • 把需要加的标记 进行汇总
  • 用;做为分割符


添加图片注释,不超过 140 字(可选)

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

VT100


添加图片注释,不超过 140 字(可选)

  • 很多东西 都可以 从VT100看出端倪
  • 八进制转义表示法
  • 控制序列前导符 ESC[
  • 分号分隔符


  • 4m是 下划线
  • 5m呢?

继续尝试

  • 5m、6m 本应是
  • 快闪、慢闪


添加图片注释,不超过 140 字(可选)

  • 但是 现在看起来 效果是一样的
  • 可以 编程实现 快闪效果吗?
  • 动手试试


快闪

添加图片注释,不超过 140 字(可选)

  • 编码

import time for i in range(1000):     if i % 2 == 0:         print("\roeasy",end="")     else:         print("\r     ",end="")     time.sleep(0.2)

  • 再往后看看

7m

  • 7m 是反相
  • 把前景和背景色交换


添加图片注释,不超过 140 字(可选)

  • 黑变白
  • 白变黑

添加图片注释,不超过 140 字(可选)

  • 颠倒黑白

8m

  • 8m对应隐藏

添加图片注释,不超过 140 字(可选)

  • 隐藏比较复杂
  • 因为完全看不见了😄


9m

  • 9m对应中划线

添加图片注释,不超过 140 字(可选)

  • 划掉

添加图片注释,不超过 140 字(可选)

  • 不喜欢的统统划掉

字体设置

添加图片注释,不超过 140 字(可选)

  • 10-19 定义为字体设置
  • 但是 实际上 没有效果


添加图片注释,不超过 140 字(可选)

20-29

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



添加图片注释,不超过 140 字(可选)

  • 1是变亮
  • 21 是取消变亮


  • 2是变暗
  • 22 是取消变暗


  • 23-29
  • 取消 3-9 的字体效果


  • 0 是全部取消

效果

添加图片注释,不超过 140 字(可选)

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

添加图片注释,不超过 140 字(可选)

  • 29m 可以专门地清除
  • 此后的 中划线样式


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


专门清除

添加图片注释,不超过 140 字(可选)

  • 注意后面hate you 部分
  • 取消了下划线样式
  • 但没有取消高亮样式


添加图片注释,不超过 140 字(可选)

  • 除非 控制序列的 新要求
  • 否则 标准输出流
  • 会一直保持 各种字体样式


  • 那么29m以后
  • 控制的又是什么呢?


29m以后

  • 居然好像真的是颜色设置了 🥰
  • 前景色
  • 背景色


添加图片注释,不超过 140 字(可选)

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

总结

  • m 可以改变字体样式
  • 0-9 之间设置的都是字体效果
  • 0 重置为默认
  • 1 变亮
  • 2 变暗
  • 3 斜体
  • 4 下划线
  • 5 慢闪
  • 6 快闪
  • 7 前景背景互换
  • 8 隐藏
  • 9 中划线


  • 叠加效果
  • \33[1;3moeasy
  • ;分割


  • 取消效果
  • 21 取消 1
  • 22 取消 2
  • 23 取消 3
  • 一直到 29
  • 0 是全部取消,回到默认


添加图片注释,不超过 140 字(可选)

  • 最后发现
  • 真的可以 设置颜色???👁



目录
相关文章
|
2月前
|
人工智能 Shell 开发工具
[oeasy]python062_在python中完成输入和输出_input_print
本文介绍了在Python中使用`input()`和`print()`函数完成输入和输出操作的基础知识。通过编写简单的程序,如问候用户和统计苹果数量,演示了如何添加提示信息、处理用户输入并输出结果。同时,回顾了上一次课程内容,包括`input`函数的参数和提示词的使用。文中还展示了如何在vim编辑器中编写和运行Python代码,并对vim和shell的基本操作进行了总结。最后提供了相关学习资源链接,方便读者进一步学习。
134 66
|
2天前
|
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()`查看当前作用域内的本地变量及其值。
21 8
|
1月前
|
人工智能 Shell 开发工具
[oeasy]python065python报错怎么办_try_试着来_except_发现异常
本文介绍了Python中处理异常的基本方法,重点讲解了`try`和`except`的用法。通过一个计算苹果重量的小程序示例,展示了如何捕获用户输入错误并进行处理。主要内容包括: 1. **回顾上次内容**:简要回顾了Shell环境、Python3游乐场和Vim编辑器的使用。 2. **编写程序**:编写了一个简单的程序来计算苹果的总重量,但发现由于输入类型问题导致结果错误。 3. **调试与修正**:通过调试发现输入函数返回的是字符串类型,需要将其转换为整数类型才能正确计算。
55 32
|
12天前
|
人工智能 自然语言处理 Shell
[oeasy]python070_如何导入模块_导入模块的作用_hello_dunder_双下划线
本文介绍了如何在Python中导入模块及其作用,重点讲解了`__hello__`模块的导入与使用。通过`import`命令可以将外部模块引入当前环境,增强代码功能。例如,导入`__hello__`模块后可输出“Hello world!”。此外,还演示了如何使用`help()`和`dir()`函数查询模块信息,并展示了导入多个模块的方法。最后,通过一个实例,介绍了如何利用`jieba`、`WordCloud`和`matplotlib`模块生成词云图。总结来说,模块是封装好的功能部件,能够简化编程任务并提高效率。未来将探讨如何创建自定义模块。
32 8
|
9天前
|
缓存 Shell 开发工具
[oeasy]python071_我可以自己做一个模块吗_自定义模块_引入模块_import_diy
本文介绍了 Python 中模块的导入与自定义模块的创建。首先,我们回忆了模块的概念,即封装好功能的部件,并通过导入 `__hello__` 模块实现了输出 "hello world!" 的功能。接着,尝试创建并编辑自己的模块 `my_file.py`,引入 `time` 模块以获取当前时间,并在其中添加自定义输出。
21 4
|
27天前
|
数据库 Python
[oeasy]python066_如何捕获多个异常_try_否则_else_exception
本文介绍了Python中`try...except...else`结构的使用方法。主要内容包括: 1. **回顾上次内容**:简要复习了`try`和`except`的基本用法,强调了异常处理的重要性。 2. **详细解释**: - `try`块用于尝试执行代码,一旦发现错误会立即终止并跳转到`except`块。 - `except`块用于捕获特定类型的异常,并进行相应的处理。 - `else`块在没有异常时执行,是可选的。 3. **示例代码**:通过具体例子展示了如何捕获不同类型的异常(如`ValueError`和`ZeroDivisionError`),并解释了异常处理
53 24
|
19天前
|
人工智能 数据库 开发者
[oeasy]python068_异常处理之后做些什么_try语句的完全体_最终_finally
介绍了 Python 中 `try` 语句的完全体,包括 `try`、`except`、`else` 和 `finally` 子句的使用。通过实例展示了如何捕获异常并输出详细的错误信息,如文件名和行号。特别强调了 `finally` 子句的作用,无论是否发生异常,`finally` 都会执行,常用于清理操作。最后总结了 `try` 语句的四个部分及其应用场景,并简要提及了 Python 社区的决策机制。 #try #except #else #finally
23 1
|
1月前
|
缓存 Shell 开发工具
[oeasy]python064_命令行工作流的总结_vim_shell_python
本文总结了命令行工作流中的关键工具和操作,包括vim、shell和Python。主要内容如下: 1. **上次回顾**:完成了输入输出的代码编写,并再次练习了vim的使用。 2. **shell基础**:介绍了shell环境及其基本命令,如`pwd`、`cd`、`ll -l`等。 3. **Python游乐场**:通过`python3`命令进入Python交互环境,可以进行简单计算和函数调用,常用函数有`help`、`ord`、`chr`等。 4. **vim编辑器**:详细讲解了vim的三种模式(正常模式、插入模式、底行命令模式)及其切换方法,以及常用的底行命令如`:w`、`:q`、`
87 15
|
16天前
|
人工智能 数据库连接 开发工具
[oeasy]python069_当前作用域都有些什么_列表dir_函数_builtins
本文介绍了Python中`dir()`函数的使用方法及其作用。`dir()`可以列出当前作用域内的所有变量和成员,类似于`locals()`,但`dir()`不仅限于本地变量,还能显示模块中的所有成员。通过`dir(__builtins__)`可以查看内建模块中的所有内建函数,如`print`、`ord`、`chr`等。此外,还回顾了`try-except-finally`结构在数据库连接中的应用,并解释了为何`print`函数可以直接使用而无需导入,因为它位于`__builtins__`模块中。最后,简要提及了删除`__builtins__.print`的方法及其影响。
29 0
|
2月前
|
存储 人工智能 Python
[oeasy]python061_如何接收输入_input函数_字符串_str_容器_ 输入输出
本文介绍了Python中如何使用`input()`函数接收用户输入。`input()`函数可以从标准输入流获取字符串,并将其赋值给变量。通过键盘输入的值可以实时赋予变量,实现动态输入。为了更好地理解其用法,文中通过实例演示了如何接收用户输入并存储在变量中,还介绍了`input()`函数的参数`prompt`,用于提供输入提示信息。最后总结了`input()`函数的核心功能及其应用场景。更多内容可参考蓝桥、GitHub和Gitee上的相关教程。
32 0