px普贤教程PuXian
普贤教程 › 包参考

fractions 包

精确有理数

项值
包名fractions
版本0.2.0
可用版本0.1.0 / 0.2.0
入口fractions.px
分类数学与统计
文件数 / 行数1 / 244

安装与引入

bash
pxpkg init          # 首次
pxpkg add fractions@0.2.0
pxpkg install
px
import fractions
所属分类教程:数学与统计

公开接口

函数参数
fracn, d
frac_from_strs
frac_adda, b
frac_nega
frac_cmpa, b
frac_eqa, b
frac_is_zeroa
frac_to_floata
frac_to_stra
frac_powa, k
frac_gcda, b
其余 16 个 def(内部与辅助,可直接调用但不属稳定接口)
函数参数
fr_parse_ints
fr_find_slashs
frac_maken, d
fr_unwrapa
frac_suba, b
frac_mula, b
frac_diva, b
frac_absa
frac_reciprocala
frac_floora
frac_ceila
frac_rounda
frac_to_mixeda
frac_from_mixedwhole, num, den
frac_is_inta
frac_to_inta

包内说明(源码头注释)

text
============================================================
普贤生态库:registry/fractions —— 精确有理数
------------------------------------------------------------
纯函数库(无 IO、无状态),编译(px build)与解释(px run)双模式一致。
frac(n, d)        → Ok([分子, 分母]) | Err      自动约分、分母正则化
frac_from_str(s)  → Ok([分子, 分母]) | Err      解析 "a/b" 或整数串
frac_add/sub/mul/div(a, b) → Ok([分子, 分母]) | Err
frac_neg(a)       → [分子, 分母](不可失败)
frac_cmp(a, b)    → -1 / 0 / 1
frac_eq(a, b)     → bool
frac_is_zero(a)   → bool
frac_to_float(a)  → float(分子 / 分母)
frac_to_str(a)    → "a/b",分母为 1 时 "a"
frac_pow(a, k)    → Ok(...) | Err(支持负指数)
frac_gcd(a, b)    → int(最大公约数,同 math.gcd 符号约定)
表示:list [分子, 分母],始终约分(gcd=1)、分母为正;0 = [0, 1]。
解析为严格模式(非法字符 → Err,M184 起 int() 同为严格解析,口径一致)。
============================================================