在列表之间交换元素

时间:2015-12-03 23:06:54

标签: python list

我正在使用Python创建纸牌游戏。我已将我的卡片表示为5D10H等。到目前为止,我已使用.pop()方法从卡片组[卡片]中将卡片带到播放器& #39; s hand [list]。这很有效,直到我创建另一个列表作为丢弃堆。当玩家丢弃一张卡片时,我会将其弹出到丢弃列表中,但它会将字符拆分为单独的元素。在整个计划中没有其他列表这样做。

发生的事情的例子:

discard = []
hand = ['12D', '5C', '3D']
discard += hand.pop(0)
discard = ['1', '2', 'D']

我该怎样防止这种情况?

1 个答案:

答案 0 :(得分:3)

+=将一个序列添加到列表中,并且是list.extend()的别名。您想要将单个元素添加到列表中,因此+=对您来说不是正确的操作。

试试这个:

discard.append(hand.pop(0))

Python文档有a convenient table,它解释了列表和其他可变序列类型的所有操作。