我正在寻找一个Python函数,它将模仿c中rand()(和srand())的行为,并满足以下要求:
到目前为止,我已经考虑了随机库和numpy的随机库。尽管两者都在其随机函数上产生从 0 到 1 的浮点数,但不像 C 那样提供从 0 到 32767 的随机数。当尝试 random.randint(0,32767) 时,我得到的结果与 C 函数中的结果不同。
TL;DR Python 中是否存在遵循与 C 相同的随机序列的现有函数/库?
小智 7
您可以CDLL通过https://docs.python.org/3/library/ctypes.html来完成此操作
from ctypes import CDLL
libc = CDLL("libc.so.6")
libc.srand(42)
print(libc.rand() % 32768)
Run Code Online (Sandbox Code Playgroud)