Python random.getrandbits(k)

random.getrandbits(k)

	返回带有 k 位随机的Python整数。 此方法随 MersenneTwister 生成器一起提供,其他一些生成器也可以将其作为API的可选部分提供。 
如果可用,getrandbits() 启用 randrange() 来处理任意大范围。

在 3.9 版更改: 此方法现在接受零作为 k 的值。

实际输出的是k位二进制数转换成的十进制数

代码实例

Python 3.9.0 (default, Oct 18 2020, 18:30:26) 
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import random
>>> result = random.getrandbits(random.randrange(8))
>>> print(result)
38
>>> result = random.getrandbits(0)
>>> print(result)
0

可用于生成WebSocket协议的Sec-WebSocket-Key

import random
import base64

bytes_keys = bytes(random.getrandbits(8) for _ in range(16))
sec_websocket_key = base64.b64encode(bytes_keys).decode()
print(sec_websocket_key)

输出结果:/WGhTRIZA/DHXeH/T46x5g==

posted @ 2022-04-06 15:05  王舰  阅读(345)  评论(0编辑  收藏  举报