从Python列表中随机选择一个单词?

19
在Python 3中,如何从单词列表中随机打印一个单词?

请参见:https://dev59.com/G2Mk5IYBdhLWcg3w8STa - dreftymac
4个回答

34
使用random.choice()函数:
>>> import random
>>> a = ["Stack", "Overflow", "rocks"]
>>> print(random.choice(a))
rocks

1
谢谢Greg,我知道这很简单,但我忘记怎么做了。 - Noah R
如果Noah的回答最好地回答了你的问题,请接受他的答案。 - Corey Goldberg

6
>>> import random
>>> random.choice("hello world".split())
'hello'
>>> random.choice("hello world".split())
'world'

3
你实际运行过它直到得到这个输出吗?还是你假装的呢 =P - Falmarri
@Falmarri:你觉得成功的几率是五五开吗? - martineau
您有25%的概率获得此输出。 - Ned Batchelder
3
不,@martineau,它并不是这样。第一个是“hello”的概率是50%,第二个是“world”的概率也是50%。0.5 * 0.5 = 0.25。 - JasonFruit
好的,我明白了……但是我不确定为什么输出恰巧是“hello”后面跟着“world”有什么了不起的地方,因为它发生的概率与任何其他组合完全相同(即使它的概率低于50/50)。 - martineau
显示剩余2条评论

3
str='book pen paper pencil'
x=str.split()
print(x)
import random
print(random.choice(x))

3
str='book pen paper pencil'
x=str.split()
print(x)
y=len(x)
import random
z=random.randrange(-1,y)
print(x[z])

1
简单来说:random.choice(x) - phd
这是一种不使用任何随机序列的逻辑。无论如何,感谢@AChampion编辑我的代码。 - Ravikiran D

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接