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

如何在Jupyter Notebook实现打字机式文本动画效果?

在Jupyter Notebook实现打字机式文本动画

当然可以实现,下面分代码片段和Markdown文本两种场景给出具体实现方法,完全适配教学时的逐段展示需求:

一、代码片段的打字机效果

通过IPython的动态显示工具,逐字符构建代码内容并实时刷新显示,模拟打字机效果:

from IPython.display import display, Markdown, clear_output
import time

def typewriter_code(text, delay=0.1):
    current_content = ""
    for char in text:
        current_content += char
        # 清除旧输出,等待新内容渲染
        clear_output(wait=True)
        # 用Markdown渲染成代码块格式,和原生代码单元格样式一致
        display(Markdown(f"```python\n{current_content}\n```"))
        time.sleep(delay)

# 测试用的代码示例
demo_code = """def calculate_sum(a, b):
    # 计算两个数的和
    result = a + b
    return result

print(calculate_sum(3, 5))"""

# 调用函数,调整delay控制打字速度
typewriter_code(demo_code, delay=0.08)

运行这段代码后,代码会逐字母显示,和真实打字机的节奏一致,适合边讲解边展示代码逻辑。

二、Markdown文本的打字机效果

如果需要逐段展示知识点说明,同样可以用动态渲染Markdown的方式实现:

from IPython.display import display, Markdown, clear_output
import time

def typewriter_markdown(text, delay=0.1):
    current_content = ""
    for char in text:
        current_content += char
        clear_output(wait=True)
        display(Markdown(current_content))
        time.sleep(delay)

# 测试用的Markdown示例
demo_md = """### Python函数核心结构
我们来拆解**函数定义**的关键要素:
1. `def`关键字:标记函数的开始
2. 函数名+参数列表:指定函数的输入
3. 缩进的函数体:编写具体逻辑
4. `return`语句:定义函数的输出"""

# 调用函数展示效果
typewriter_markdown(demo_md, delay=0.1)

注意事项

  • 调整delay参数可以控制打字速度,数值越小速度越快,根据讲解节奏灵活调整
  • 如果需要在展示过程中暂停,可在函数中加入input("按下回车继续...")之类的逻辑
  • 上述效果都是在代码单元格中运行实现的,运行后会动态覆盖当前单元格的输出,模拟逐步显示的效果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 14:54:19