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

如何在Python中编写函数将数字转为对应英文文本串?

多位数转对应文本的解决方案

你的现有代码只能处理单个数字,要实现多位数的拆分转换,只需要遍历数字的每一位,逐个转换后拼接即可,修改后的代码如下:

table = {
    0: "zero",  # 按需添加,若不需要处理0可删除
    1: "one",
    2: "two",
    3: "three",
    4: "four",
    5: "five",
    6: "six",
    7: "seven",
    8: "eight",
    9: "nine"
}

def digits_to_text(num):
    # 将输入转为字符串,遍历每一位数字
    digit_chars = str(num)
    # 逐个转换数字为对应文本,收集结果
    text_segments = [table[int(char)] for char in digit_chars]
    # 用空格拼接所有文本段
    return ' '.join(text_segments)

说明

  1. 调整了映射字典:移除了10: "ten"的条目,因为我们是按单个数字拆分处理;若需要处理0的文本转换,可以保留0: "zero"(不需要则直接删除)。
  2. 输入兼容处理:不管传入的是整数(如33)还是字符串形式的数字(如"33"),函数都能正常工作。
  3. 核心逻辑:把数字转为字符串后遍历每一位,将每个字符转为整数后从字典中获取对应文本,最后用空格拼接成结果。

测试示例:

  • digits_to_text(33) 返回 'three three'
  • digits_to_text(1234) 返回 'one two three four'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 11:15:27