python - 如何在 Python 3 中将一个列表中的项目追加到另一个列表

标签 python arrays python-3.x function

我正在尝试为 GCSE 计算机科学编写“Card Trick”练习程序,但我被困在一个功能上。

我有一个包含 3 个其他数组的数组,我想获取这 3 个数组中的项目并将它们移动到另一个列表中。

这是我的代码,我不确定为什么它不起作用:

def remake_list(old_piles,mid_pile) :
    print(old_piles)
    newlist = []
    if mid_pile == 1 :
        newlist.extend(old_piles[1])
        newlist.extend(old_piles[0])
        newlist.extend(old_piles[2])
    if mid_pile == 2 :
        newlist.extend(old_piles[0])
        newlist.extend(old_piles[1])
        newlist.extend(old_piles[2])
    if mid_pile == 3 :
        newlist.extend(old_piles[0])
        newlist.extend(old_piles[2])
        newlist.extend(old_piles[1])
    return newlist

如果 old_piles 是:

[['S8', 'S6', 'H3', 'DK', 'D8', 'C8', 'D2'], ['SQ', ',H2', 'S2', 'S4', 'D7', 'CK', 'SJ'], ['CA', 'D3', 'DQ', 'DJ', 'C9', 'H10', 'S7']]

mid_pile 是 3,我该如何让它工作?

最佳答案

您可以只使用列表添加:

def remake_list(old_piles,mid_pile) :
    print(old_piles)
    newlist = []
    if mid_pile == 1 :
        newlist = old_piles[1] + old_piles[0] + old_piles[2]
    if mid_pile == 2 :
        newlist = old_piles[0] + old_piles[1] + old_piles[2]
    if mid_pile == 3 :
        newlist = old_piles[0] + old_piles[2] + old_piles[1]
    return newlist

关于python - 如何在 Python 3 中将一个列表中的项目追加到另一个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46039307/

相关文章:

python - 在 SqlAlchemy SQLite 中按联合查询中的列排序

python - 在不运行 __init__ 的情况下测试实例方法的最佳方法

c# - 尝试对没有所有元素的数组列表进行排序

JavaScript 多维数组

c - 如何将字符串和整数添加到数组然后打印到文本文件

python - 从有序字典中过滤掉项目

Python戴尔驱动程序下载

python - 如何在gridsearchcv中使用log_loss记分器?

python - 如何在 Python 中从 yaml 转储中删除键/值对?

python-3.x - 形状与多类分类器不兼容