Python Random.sample输出一个三维数组

Python Random.sample输出一个三维数组,python,arrays,list,random,Python,Arrays,List,Random,我正在使用一个二维数组(一副牌),我正在尝试random.sample用5个随机项填充另一个列表。不过,我得到了一个三维列表,我无法修复它 有什么帮助吗 import random suits =['H', 'D', 'S', 'C'] numbers = [] deck = [] for i in range(0, 13): numbers.append(i+2) for i in range(len(suits)): for j in range(len(numbers)): d

我正在使用一个二维数组(一副牌),我正在尝试random.sample用5个随机项填充另一个列表。不过,我得到了一个三维列表,我无法修复它

有什么帮助吗

import random
suits =['H', 'D', 'S', 'C']
numbers = []
deck = []
for i in range(0, 13):
 numbers.append(i+2)
for i in range(len(suits)):
 for j in range(len(numbers)):
    deck.append([numbers[j], suits[i]])
player1 = []
pc = []
for i in range(5):
 player1.append(random.sample(deck, 1))
 pc.append(random.sample(deck, 1))
 print(player1,pc)
输出:[[14',C']],[[11',D']],[[6',C']],[[14',S']],[[13',H']][[2',C']],[[6',D']],[[11',C']],[[6',D']],[[9',S']]]。。。我只是无法摆脱创建的额外列表(我需要使用.sample而不是.choice,它以前工作得很好)


提前感谢,

在您的情况下,
random.sample(deck,1)
返回一个2D数组,这就是导致问题的原因,您可以修复以下两行:

player1.append(random.sample(deck, 1)[0])
pc.append(random.sample(deck, 1)[0])
检查错误

random.sample(deck,1)
[[6, 'D']]

是的,你是对的。。喝了几杯酒后,我彻夜未眠,决定在这个时候完成一个大学项目,我就是懒得去想办法。非常感谢你,伙计!别担心,继续。不要投票并接受它所帮助的解决方案:)