python - 如何连续更改文本颜色
问题描述
我有一个程序可以在 while 循环中更改 ASCII 艺术的颜色。但是当我运行时,它会创建另一个文本。我只想创建颜色而不创建新文本
这是我的代码:
from rich import print
import random
import time
import sys
animation_time = 10
def generate_random_color():
random_color = ["red", "blue", "magenta", "yellow", "purple"]
return random.choice(random_color)
while True:
color = generate_random_color()
text = f"[{color}] \
\n██████╗ ██╗ ██████╗ ███████╗ \
\n██╔══██╗██║██╔═══██╗██╔════╝ \
\n██████╔╝██║██║ ██║███████╗ \
\n██╔══██╗██║██║ ██║╚════██║ \
\n██████╔╝██║╚██████╔╝███████║ \
\n╚═════╝ ╚═╝ ╚═════╝ ╚══════╝ \
[/]"
print(text, end="\r")
time.sleep(1)
解决方案
我已经明白了。我只需要每次清除屏幕而不是回车
推荐阅读
- java - 我的代码中不断出现“非法的表达式开头”错误
- html - 如何删除 AMP 侧边栏中的这条黄线?
- c++ - 大括号或相等初始化器初始化顺序
- swift - 已解决:在瓷砖地图中移动角色时锚控制按钮?
- c# - 如何使一个 DependencyProperty 更改 WPF UserControl 中的另一个
- html - CSS浮动布局在响应时不均匀
- java - 为什么在 Spring Boot App 中自动装配失败?
- https - 与 HTTPS 握手时出错:Windows 中的 SSL 连接错误
- airflow-scheduler - 如何使用 nohup 检查 SSHOperator 以查看工作是否已完成以完成 dag?
- google-bigquery - SQL:在其他行中保留组的第一个值