首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python从列表中随机选择

Python从列表中随机选择
EN

Stack Overflow用户
提问于 2018-08-26 06:08:20
回答 3查看 1.7K关注 0票数 0

如何从下面给出的列表中随机选择。

代码语言:javascript
复制
colours = ['red', 'blue', 'green', 'yellow', 'black', 'purple', 'Brown', 'Orange', 'violet', 'gray']
  1. 现在从上面的10个项目列表中选择一个项目。
  2. 打印
  3. 从剩下的9项中挑选2项。
  4. 打印
  5. 最后从剩下的7项中选出3项。
  6. 打印
  7. 所以最终结果会是这样

棕色

绿紫罗兰

红、黑、灰

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-08-26 06:21:48

一个简单的方法就是从列表中删除选定的值。如果您使用sets,则会稍微简单一点:

代码语言:javascript
复制
In []:
colours = {'red', 'blue', 'green', 'yellow', 'black', 'purple',
           'Brown', 'Orange', 'violet', 'gray'}
for n in [1, 2, 3]:
    cs = random.sample(colours, k=n)
    colours -= set(cs)
    print(cs)

Out[]:
['Brown']
['Orange', 'red']
['purple', 'gray', 'blue']
票数 2
EN

Stack Overflow用户

发布于 2018-08-26 06:21:55

我使用的方法是对输入向量进行洗牌,取所需的元素数。

代码语言:javascript
复制
import random

colours = ['red', 'blue', 'green', 'yellow', 'black', 'purple', 'Brown', 'Orange', 'violet', 'gray']
random.shuffle(colours)

for i in range(1, 4):
  n, colours = colours[0:i], colours[i:]
  print(n)
票数 0
EN

Stack Overflow用户

发布于 2018-08-26 07:00:13

代码语言:javascript
复制
colors = ['red', 'blue', 'green', 'yellow', 'black', 'purple','Brown', 'Orange', 'violet', 'gray']
for n in range(1,4):
    select=np.random.choice(colors,n)
    print(select)
    colors=list(set(colors).difference(set(select)))

output:-['Brown']
        ['red' 'violet']
        ['yellow' 'Orange' 'black']
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52023642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档