ruby - 使用 Ruby 移动十进制固定数量的空格
问题描述
我将大整数(通常为 15-30 位)存储为字符串,表示一定数量的给定 currenty(例如 ETH)。还存储了移动小数的位数。
{
"base_price"=>"5000000000000000000",
"decimals"=>18
}
我最终要寻找的输出是(如果从中取出小数并将其移至左侧 18 位,5.00
您会得到)。5000000000000000000
我将如何在 Ruby 中做到这一点?
解决方案
鉴于:
my_map = {
"base_price"=>"5000000000000000000",
"decimals"=>18
}
你可以使用:
my_number = my_map["base_price"].to_i / (10**my_map["decimals"]).to_f
puts(my_number)
推荐阅读
- mysql - mysql更新列,来自2个表的值
- ruby-on-rails - 使用 Postgresql 函数的 Rails change_column 迁移 - 时间到整数(自午夜以来的秒数)
- google-analytics - 在 BigQuery 中按命中范围的自定义维度计算会话、用户和收入
- html - 24 英寸和 32 英寸显示器对应的像素大小是多少?
- java - 用流替换 for 循环
- arrays - 如何在猫鼬的另一个数组中更新特定数组的对象?
- python - PyInstaller 和 FastAPI(超出最大递归深度)
- swift - 带有事件的日历 swiftUI
- django-rest-framework - 当外键不存在时,Django rest框架使用序列化程序创建新记录
- python - 访问正在构建的当前列表