Python3 Как безопасно преобразовать число с плавающей точкой в ​​целое число единиц256? - PullRequest
0 голосов
/ 07 мая 2019

Я пытаюсь передать токен ERC20 с помощью web3py . Поэтому, поскольку поле значения должно быть целым числом в 256 бит, мне нужно преобразовать значение, которое мне нужно отправить, без округления.

Например:

val = 117444
decimals = 18
val_256 = int(val * pow (10,decimals))
print(val_256) #Prints 117444000000000000000000

val = 117444.0
decimals = 18
val_256 = int(val * pow (10,decimals))
print(val_256) #Prints 117444000000000007340032 which causes transaction to fail

Так может кто-нибудь сказать мне, как справиться с этим делом, предоставляет ли webpy некоторые служебные функции для этого?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...