You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python打字机动画中添加字符循环高亮动画?

实现带白色高亮的循环打字机动画

要实现你要的效果,核心是用ANSI终端转义序列控制字符样式,再调整打字逻辑配合循环:

  1. 高亮样式控制:

    • \033[7m:开启反显高亮(白色字符+黑色背景,适配绝大多数现代终端)
    • \033[0m:恢复终端默认样式
  2. 字符显示逻辑:

    • 每个字符先以高亮状态输出,停留0.1秒
    • 非换行字符通过退格符\b覆盖为正常样式;换行符直接恢复样式并停留1秒
    • 外层循环3次,每次播放前清屏,重复整个动画

完整代码如下:

import os
import sys
import time

message = "Hello! \n\
We're glad to have you here! \n\
How may I assist you? \n\
"

def typewriter(message):
    for char in message:
        # 输出高亮字符
        sys.stdout.write(f"\033[7m{char}")
        sys.stdout.flush()
        time.sleep(0.1)
        
        if char != "\n":
            # 退格后替换为正常样式的字符
            sys.stdout.write(f"\033[0m\b{char}")
            sys.stdout.flush()
        else:
            # 换行后恢复默认样式并暂停
            sys.stdout.write("\033[0m")
            sys.stdout.flush()
            time.sleep(1)

# 循环3次播放动画
for _ in range(3):
    os.system("clear")  # Windows系统可替换为"cls"
    typewriter(message)
    # 动画结束后停留1秒再清屏循环
    time.sleep(1)

注意:如果是Windows系统,把os.system("clear")改成os.system("cls")即可。

内容的提问来源于stack exchange,提问作者Armando Kauffman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 05:43:29