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

Python如何获取两个decimal.Decimal类型数值的最大值

问题原因

Python 标准库的 decimal.Decimal 类型没有名为 max 的实例方法,你尝试对 Decimal 实例调用 max() 方法的写法本身不符合类的设计,因此会抛出属性不存在的报错(你报错中提到的 max_term 大概率是代码书写笔误,核心问题都是调用了 Decimal 实例不存在的属性)。

正确实现方式

有两种常用的正确写法,两种方式都不会丢失 Decimal 的精度:

  • 方法1:使用 Python 内置的 max() 函数,直接传入两个 Decimal 对象即可,内置函数原生支持 Decimal 类型的大小比较,写法更通用,更推荐:
max_amount = max(option.principal.amount, max_monthly_amount.amount)
  • 方法2:调用 decimal.Decimal 类的静态 max 方法,将两个 Decimal 作为参数传入:
import decimal
max_amount = decimal.Decimal.max(option.principal.amount, max_monthly_amount.amount)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 09:36:04