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

Python实现固定黄色边框内文本逐字慢速打印问题求助

实现终端静态黄色边框+内部文本逐字慢速打印

问题描述

需求:在终端中显示固定的黄色边框,边框内的文本需实现逐字慢速打印效果,边框本身保持静态显示。

目前已成功实现边框的黄色显示,但尝试将边框与慢速打印文本结合时未达到预期效果,现有代码如下:

from termcolor import colored
import sys, time, random
import os
os.system('clear')

def print_slow(str):
    for letter in str:
        sys.stdout.write(letter)
        sys.stdout.flush()
        time.sleep(0.1)

print(colored('----------------', 'yellow'))
print_slow('   |  something.  |')
print(colored('|              |', 'yellow'))
print(colored('----------------', 'yellow'))

解决方案

问题出在你把边框竖线和文本绑定在同一个慢速打印操作里,还重复打印了中间行的边框。正确逻辑是先静态渲染完整边框框架,再在边框中间区域逐字输出文本。

修改后的代码如下:

from termcolor import colored
import sys, time
import os
os.system('clear')

def print_slow(text):
    for letter in text:
        sys.stdout.write(letter)
        sys.stdout.flush()
        time.sleep(0.1)

# 静态打印上边框
print(colored('----------------', 'yellow'))
# 打印左边黄色竖线,不换行
sys.stdout.write(colored('|', 'yellow'))
# 输出前置空格,然后慢速打印文本,最后补后置空格
sys.stdout.write('  ')
print_slow('something.')
sys.stdout.write('  ')
# 打印右边黄色竖线并换行
print(colored('|', 'yellow'))
# 静态打印下边框
print(colored('----------------', 'yellow'))

代码说明

  1. 先一次性打印上下边框,确保边框静态显示完整。
  2. 中间行拆分处理:先输出左边黄色竖线,再用慢速打印输出文本内容,最后补上右边竖线,全程保持在同一行。
  3. 通过前置/后置空格控制文本在边框内的位置,可根据需要调整空格数量实现居中或对齐效果。

内容的提问来源于stack exchange,提问作者thegamer1234 f

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 15:05:30