2016-12-04 97 views
-2

我需要一个8个元素的列表,我希望那个python随机导入列表中的元素。但是我需要列表中的每一个元素。就像这样:当我使用随机时,python如何打印每个元素?

我需要的0至4号在列表中,但如果我写:

s = [] 
for i in range(8): 
    s.append(random.randint(0,4)) 
print("s:", s) 

Python没有每个号码的打印我至少一次。 Python打印我这样的:

s = [1,0,2,2,1,0,1,3] - 在此列表中是4失踪,但我希望所有5个数字至少一次在列表中。

请帮帮我。

+0

您的代码是* random *。你可能不会四肢,或四肢,或中间的任何地方。 *“我希望所有5个数字至少在列表中有一次”* - 但这不是你写的。这是唯一的约束吗? – jonrsharpe

+0

你需要更清楚你想要做什么。 – Hampus

+0

我需要元件从0到4的随机列表(8)其中,将每个数字列表中的至少一次。 – Bababo

回答

0

如果你想有八个项目的清单,其中包括各至少一个元素0,1,2,3,4的,那么你真的想要的是列表[0,1,2, 3,4]和三个附加的随机元素,全部以随机顺序排列:

import random 

# start a list with one each of the desired elements 
s = [0,1,2,3,4] 

# add three more elements 
for i in range(3): 
    s.append(random.randint(0,4)) 
    # randomize the order of the elements in the list 
    random.shuffle(s) 
print("s:", s) 
+0

这就是我想要的..非常感谢你! – Bababo