栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在python中获取随机布尔值?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在python中获取随机布尔值?

亚当的答案相当快,但是我发现答案

random.getrandbits(1)
要快得多。如果您真的想要布尔值而不是long值,那么

bool(random.getrandbits(1))

仍然是两倍的速度

random.choice([True, False])

两种解决方案都需要

import random

如果最大的速度不是优先考虑的话,那么

random.choice
阅读肯定会更好

$ python -m timeit -s "import random" "random.choice([True, False])"1000000 loops, best of 3: 0.904 usec per loop$ python -m timeit -s "import random" "random.choice((True, False))" 1000000 loops, best of 3: 0.846 usec per loop$ python -m timeit -s "import random" "random.getrandbits(1)"1000000 loops, best of 3: 0.286 usec per loop$ python -m timeit -s "import random" "bool(random.getrandbits(1))"1000000 loops, best of 3: 0.441 usec per loop$ python -m timeit -s "import random" "not random.getrandbits(1)"1000000 loops, best of 3: 0.308 usec per loop$ python -m timeit -s "from random import getrandbits" "not getrandbits(1)"1000000 loops, best of 3: 0.262 usec per loop  # not takes about 20us of this

在看到@Pavel的答案后添加了此内容

$ python -m timeit -s "from random import random" "random() < 0.5"10000000 loops, best of 3: 0.115 usec per loop


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/669038.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号