SKILL.md
汇率查询#
查询任意两种货币的实时汇率,或指定日期的历史汇率。数据源为 Frankfurter(欧洲央行 ECB 每日发布,免费、无需 Key)。
用法#
python3 rate.py USD CNY # 1 美元 = ? 人民币(今日)
python3 rate.py USD CNY 1000 # 1000 美元 = ? 人民币
python3 rate.py EUR JPY --date 2026-10-30 # 指定日期
python3 rate.py USD --list # 列出支持的货币代码
- 参数:
<基准货币> <目标货币> [金额],货币用三位 ISO 代码(USD、CNY、EUR、JPY 等)。 --date YYYY-MM-DD:查询该日汇率(ECB 数据,工作日发布)。--list:列出全部支持的货币代码。
输出示例#
USD → CNY(2026-10-31)
1 USD = 7.1523 CNY
1000 USD = 7152.30 CNY
机制#
- Frankfurter API:
https://api.frankfurter.dev/v1/latest?base=USD&symbols=CNY(最新);/v1/2026-10-30?base=USD&symbols=CNY(历史)。 - 纯 Python 标准库(urllib),无第三方依赖。
- 汇率数据由欧洲央行每日发布,覆盖约 30 种常用货币。
隐私与安全#
- 不收集任何个人信息;仅向 Frankfurter 公共接口发起查询。
- 不含任何密钥或账号凭据。
用途与依赖
作者没写,这些是平台读文件后整理的,以文件为准。
使用示例
请求:帮我算一下 1000 美元现在能换多少人民币?
预期
运行 python3 rate.py USD CNY 1000,向 Frankfurter 接口查询最新汇率并计算,输出类似:USD → CNY(2026-10-31)/ 1 USD = 7.1523 CNY / 1000 USD = 7152.30 CNY。若查询失败或货币代码不在支持范围,会给出错误提示。
- 适用场景
- 想知道 1 美元、欧元或日元现在能换多少人民币
- 把某个金额按当前汇率或历史汇率换算成另一种货币
- 查询某个历史日期(如报销单、发票日期)的汇率
- 查看工具支持哪些货币代码
- 输入
- 基准货币的三位 ISO 代码,如 USD
- 目标货币的三位 ISO 代码,如 CNY
- 可选:要换算的金额(默认 1)
- 可选:历史日期 YYYY-MM-DD(默认今日)
- 可选:--list 用于列出全部支持的货币代码
- 输出
- 基准货币到目标货币的汇率数值
- 换算后的金额(输入金额不为 1 时)
- 所用汇率的日期
- 用 --list 时输出的支持货币代码清单
- 查询失败时的错误提示
- 运行环境
- Python 3(仅用标准库 urllib、json、argparse)
- 依赖
- 无

