[问题] 大数字取对数(log)问题??

楼主: s90104123 (也许当时忙着微笑和哭泣)   2020-05-19 11:24:21
一般来说用math.log2(数字)就能取对数
但是数字太大好像就不太准
像是2**87-1 会出现87
正确来说应该是86.多吧
请问有什么解决方法呢?
感谢大大
作者: pmove (金疾柠檬)   2020-05-19 12:22:00
要绝对准的话,就是要自己写?
作者: GeoMeTric ( )   2020-05-19 13:47:00
decimal module
作者: kenduest (小州)   2020-05-19 14:25:00
decimal 内没看到 log2(), 但是有log10() ,转一下from decimal import Decimal, getcontextgetcontext().prec = 30r = Decimal(2**87-1).log10() / Decimal(2).log10()r 应该就是你要的?
楼主: s90104123 (也许当时忙着微笑和哭泣)   2020-05-19 18:00:00
感谢楼上的各位

Links booklink

Contact Us: admin [ a t ] ucptt.com