[英]How do i choose random string from python list other than using random.randint() in index?
我正在尝试从python列表中检索随机字符串以构建单词猜测挑战。 我在阿里云ECS实例上部署了anaconda环境。
我经常使用以下方法从列表中检索随机字符串。
比方说
WordStack=['A','B','C','D']
print(WordStack[random.randint(len(WordStack))])
有没有优化的方法或内置功能可以做到这一点? 由于单词数量众多,得出结果要花费一些时间。
看看random.choice
正是您所需要的。 对于您的情况,它看起来像这样:
WordStack = ['A','B','C','D']
random_str = random.choice(WordStack)
print(random_str) # -> whatever
话虽如此,我不希望它对处理速度产生如此大的影响。 但是,如果我有时间,我会进行测试。
您可以尝试使用random.randrange()代替random.randint()。
random.randrange():
返回范围(开始,停止,步进)中随机选择的元素。 这等效于choice(range(start(开始,停止,步进)),但实际上并不构建range对象。
来自https://docs.python.org/3/library/random.html#random.randrange
我不知道执行此操作的任何内置函数。
因此,等效语句为:
WordStack[random.randrange(len(WordStack))]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.