用于非常长的数字的python算法。
Arithmetics的Python项目详细描述
算术是一个python库,它允许对very长数字进行加、减和乘运算。
python(像许多编程语言一样)数学不好。它不能在内存中表示非常大的数字。它把小数点的精度四舍五入,好像没关系似的。例如,Python计算^ {Tt1} $次^ {TT2} $作为^ {TT3}$,这只是一个悲伤的近似。python认为,1 - 0.00000000000000001仍然等于1.0,这显然是错误的,并可能导致严重的错误。
算法库可以精确地对任意长度的数字进行加、减或乘运算。它不会遇到整数溢出或浮点舍入问题,因为它接受字符串格式的数字。它可以处理正数、负数和十进制数。分析库可以精确计算上述乘法:-539980584635519517644606174820023097370977572779217236866897631496501.40991196066825563084376519821275241099。
用法
arithmetics.calculate(...)接受1个算术运算符(+、-或*)和2个字符串格式的数字,并将结果作为字符串返回:
from arithmetics import arithmetics arithmetics.calculate(arithmetics.OPERAND_ADD, '123', '-456.789') # returns '-333.789' arithmetics.calculate(arithmetics.OPERAND_SUBTRACT, '-1.0000000000000000000000000000000000001', '0.0000000000000000000000000000000000002') # returns '-0.9999999999999999999999999999999999999' arithmetics.calculate(arithmetics.OPERAND_MULTIPLY, '31352725584.2464', '-4389.999945479936') # returns '-137638463605489.0905724488802304'
如果…
- 你用非常大的数字(如天体物理学)进行数学运算
- 您不想丢失小数精度(例如金融应用程序)
快乐编码!
ozan eren bilgen