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

如何在Python打字函数中支持数字参数并添加参数间空格?

解决方案

修改后的代码

import sys
import time

def type(*text):
    for idx, item in enumerate(text):
        # 将每个参数转为字符串,兼容数字等非字符串类型
        s = str(item)
        # 逐个输出字符
        for char in s:
            sys.stdout.write(char)
            sys.stdout.flush()
            time.sleep(0.05)
        # 非最后一个参数后添加空格
        if idx != len(text) - 1:
            sys.stdout.write(' ')
            sys.stdout.flush()
            time.sleep(0.05)
    print()

关键修改说明

  • 支持数字参数:对每个传入的参数单独调用str()转换,整数、浮点数等类型会被转为对应的纯字符串形式(比如123转为"123"),不会出现括号或单引号。之前的问题是误将整个参数元组直接转为字符串(比如str(text)),而非逐个处理每个参数。
  • 修复参数间无空格问题:通过enumerate获取参数索引,判断当前参数是否为最后一个,若非最后一个则输出空格,并保持和字符一致的延迟,维持打字机的连贯效果。

使用示例

name = "Alice"
type("Hello", name, 2024)
# 会按打字机效果输出:Hello Alice 2024

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 14:45:27