【发布时间】:2018-06-07 03:24:51
【问题描述】:
为了应用于区块链应用,我需要在 R 中生成随机的 64 位十六进制数。
我认为由于计算机的能力,一次获得这样一个 64 位的十六进制数 相当麻烦,也许是不可能的。
所以,我认为我应该生成具有相当低位数的随机十六进制数,并将它们组合(连接)在一起以获得随机的 64 位十六进制数。
我已经接近解决方案了:
library(fBasics)
.dec.to.hex(abs(ceiling(rnorm(1) * 1e6)))
产生随机的十六进制数。问题是在某些情况下,我得到 6 位十六进制数,在某些情况下,我得到 7 位十六进制数。因此,首先解决这个问题。
有什么想法吗?
【问题讨论】:
-
.dec.to.hex记录在哪里?假设dec是decimal的缩写,它似乎是一个奇怪的命名函数:R 中的数字肯定不是真的 以十进制存储的吗? (或者它的目的是将十进制的 strings 转换为十六进制?) -
“也许不可能。”当然不是不可能,尽管在 R 中拼写出来可能很尴尬。听起来好像您正在寻找与 Python 的
hex(random.getrandbits(256))等效的 R。对吗? -
@MarkDickinson
fBasics::.dec.to.hex揭示其内容:function (b) { ans = .chcode(b, base.in = 10, base.out = 16) ans } -
@MarkDickinson 我不懂 Python。因此,对于这种比较,我无话可说。
标签: r random numbers hex blockchain