是否可以从洗牌列表中创建新列表?

时间:2016-12-15 15:55:24

标签: python list random shuffle

OriginalName = ["a", "b", "c"]

ShuffleList = random.shuffle(OriginalName)
print ShuffleList

当我运行上面的内容时,它返回“无”。我试图在洗牌后创建一个新列表。

我想创建另一个随机创建的列表,可能类似于["c", "a", "b"]

3 个答案:

答案 0 :(得分:8)

random.shuffle正在重新组织原始列表 - 您只使用一个列表。

尝试类似

的内容
OriginalName = ["a", "b", "c"]
ShuffleList = list(OriginalName)  # making a new list copy

random.shuffle(ShuffleList)

现在你有两个名单,原始名单和洗牌名单。

旁注:请务必使用蛇案(original_name代替OriginalName)。这是Python的惯例。

答案 1 :(得分:3)

首先创建新列表,然后将其改组。

shuffled = OriginalName[:]
random.shuffle(shuffled)
print shuffled

答案 2 :(得分:1)

我会将random.sample用于此

import random
l = list(range(5))
print(random.sample(l, len(l)))

打印类似

的内容
[4, 0, 2, 1, 3]