相同的列表改组不能用作函数 // Python
Identical list shuffling doesn't work as function // Python
我目前正在尝试编写一个简单的洗牌函数,以相同方式洗牌两个列表。我已经让它在函数之外工作,但是一旦我添加它,它就会正常打印列表。有人可以告诉我我做错了什么或指出正确的方向吗?我确定这很简单。
第一段代码是我正在尝试做的,第二段是目前有效的。
感谢任何能提供帮助的人。
干杯
import random
ARRAYQ = ["Q1", "Q2", "Q3", "Q4"]
ARRAYA = ["A1", "A2", "A3", "A4"]
def shuffle(list1, list2):
enclosed = list(zip(list1, list2))
random.shuffle(enclosed)
list1, list2 = zip(*enclosed)
return list1, list2
shuffle(ARRAYQ, ARRAYA)
print(ARRAYQ)
print(ARRAYA)
.
import random
ARRAYQ = ["Q1", "Q2", "Q3", "Q4"]
ARRAYA = ["A1", "A2", "A3", "A4"]
enclosed = list(zip(ARRAYQ, ARRAYA))
random.shuffle(enclosed)
ARRAYQ, ARRAYA = zip(*enclosed)
print(ARRAYQ)
print(ARRAYA)
看看第一个片段。它正常打印列表,因为您打印在函数之前声明的变量。
应该是:
import random
ARRAYQ = ["Q1", "Q2", "Q3", "Q4"]
ARRAYA = ["A1", "A2", "A3", "A4"]
def shuffle(list1, list2):
enclosed = list(zip(list1, list2))
random.shuffle(enclosed)
list1, list2 = zip(*enclosed)
return list1, list2
list1, list2 = shuffle(ARRAYQ, ARRAYA)
print(list1)
print(list2)
我目前正在尝试编写一个简单的洗牌函数,以相同方式洗牌两个列表。我已经让它在函数之外工作,但是一旦我添加它,它就会正常打印列表。有人可以告诉我我做错了什么或指出正确的方向吗?我确定这很简单。
第一段代码是我正在尝试做的,第二段是目前有效的。
感谢任何能提供帮助的人。
干杯
import random
ARRAYQ = ["Q1", "Q2", "Q3", "Q4"]
ARRAYA = ["A1", "A2", "A3", "A4"]
def shuffle(list1, list2):
enclosed = list(zip(list1, list2))
random.shuffle(enclosed)
list1, list2 = zip(*enclosed)
return list1, list2
shuffle(ARRAYQ, ARRAYA)
print(ARRAYQ)
print(ARRAYA)
.
import random
ARRAYQ = ["Q1", "Q2", "Q3", "Q4"]
ARRAYA = ["A1", "A2", "A3", "A4"]
enclosed = list(zip(ARRAYQ, ARRAYA))
random.shuffle(enclosed)
ARRAYQ, ARRAYA = zip(*enclosed)
print(ARRAYQ)
print(ARRAYA)
看看第一个片段。它正常打印列表,因为您打印在函数之前声明的变量。
应该是:
import random
ARRAYQ = ["Q1", "Q2", "Q3", "Q4"]
ARRAYA = ["A1", "A2", "A3", "A4"]
def shuffle(list1, list2):
enclosed = list(zip(list1, list2))
random.shuffle(enclosed)
list1, list2 = zip(*enclosed)
return list1, list2
list1, list2 = shuffle(ARRAYQ, ARRAYA)
print(list1)
print(list2)