Python,如何从一个列表中随机添加/追加元素到另一个列表?

-1 python arrays random list append

import random
global colours 
global current
colours = ["Red","Yellow","Blue","Green","Orange","White"]
current = []

def randompicker():
    for i in range(4):
        current = random.choice(colours)
randompicker()
print(colours)
print(current)
Run Code Online (Sandbox Code Playgroud)

嘿,所以上面的程序应该从名为colors的列表中随机添加4个元素到另一个名为current的列表中.我查看了论坛,但我无法找到特定于此案例的帮助.

简而言之,是否有一种快速有效的方法可以将一个列表中的4个随机元素直接添加到另一个列表中?

谢谢

wim*_*wim 6

你正在描述的基本用法random.sample.

>>> colours = ["Red","Yellow","Blue","Green","Orange","White"]
>>> random.sample(colours, 4)
['Red', 'Blue', 'Yellow', 'Orange']
Run Code Online (Sandbox Code Playgroud)

如果要允许重复,请random.choices改用(Python 3.6中的新增功能).

>>> random.choices(colours, k=4)
['Green', 'White', 'White', 'Red']
Run Code Online (Sandbox Code Playgroud)