Agent Skills
返回列表
阿拉伯数字转中文大写

阿拉伯数字转中文大写

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_ac83c65d/xxp-1。

技能介绍

要解决的问题

在财务、合同、发票这类文本里,金额通常必须写成中文大写,例如「壹拾贰万叁仟肆佰伍拾陆元」。手工完成这件事有两个麻烦:一是容易写错单位(佰/仟/万/亿 的位置),二是格式要求严格,一个错字就可能导致票据退回。

这个技能把这件事变成一个确定性的字符串转换过程:交给 number_to_chinese(num) 处理,不用再对着进位规则人肉核对。

它是怎么工作的

核心能力集中在 main.py 里的 number_to_chinese(num) 函数,支持三类输入:

  • 整数:范围 0 ~ 999999999999,覆盖到万亿级,对应大写字符集为 零壹贰叁肆伍陆柒捌玖拾佰仟万亿。
  • 小数:小数部分逐位转换,例如 3.14 → 叁点壹肆。
  • 负数:负号转换为「负」,例如 -100 → 负壹佰。

调用流程分三步:

  1. 从用户输入中提取需要转换的数字。
  2. 把数字传给 main.py 的 number_to_chinese(num)。
  3. 把结果返回给用户。

适用边界与注意点

  • 不含货币后缀:技能只输出数字部分,不会自动补「元」「角」「分」。如果你的场景需要完整金额写法,需要在外层自己拼接。
  • 小数不四舍五入:小数是逐位转换,3.14 得到 叁点壹肆 而不是按分位取整。财务场景里如果需要按分舍入,必须先做数值处理再调用。
  • 整数有上限:超出万亿级(999999999999)的整数不在支持范围内,传入前需要确认量级。
  • 依赖提取环节:第 1 步「从输入中提取数字」需要由 Agent 完成。如果输入是长文本且包含多个数字,要先明确要转换哪一个,否则容易拿错数值。
  • 不负责校验合法性:技能不会检查金额是否符合票据规范,输出的正确性取决于输入数字本身。

使用场景

  • 撰写合同时要把金额写成中文大写,避免手工填写出现错字或单位错位
  • 批量处理发票金额,把数字转成大写后填入票据模板打印归档
  • 处理带小数的金额需逐位转换,如把 3.14 转成叁点壹肆写入凭证
  • 把系统导出的大额数字(如项目预算)转成中文大写填入报表

适合人员

  • 财务人员:每月开具发票、填写合同金额大写,要求数字与单位零差错
  • 合同起草人:在协议金额条款中要填中文大写数字,手工转换容易出错
  • 开发人员:实现票据生成或金额格式化功能时需要一个可靠的转大写实现
  • 外贸单证人员:制作形式发票或结算单时要把金额转成中文大写