两列Python列表如何洗牌?

2024-06-07 23:33:29 发布

您现在位置:Python中文网/ 问答频道 /正文

洗牌Python列表很简单:

>>> import random
>>> random.seed(100)
>>> a = [1, 2, 3, 4, 5, 6, 7]
>>> random.shuffle(a)
>>> a
[7, 1, 5, 6, 4, 3, 2]

两列Python列表如何洗牌?你知道吗

所以,具体来说,我有一个代表表格的清单:

[
    [
        0.121282446303956,
        2.1595318494748978,
        0.43386778589085612
    ],
    [
        1
    ],
    [
        0.121282446303956,
        2.1595318494748978,
        0.43386778589085612
    ],
    [
        2
    ],
    [
        0.121282446303956,
        2.1595318494748978,
        0.43386778589085612
    ],
    [
        3
    ],
    [
        0.121282446303956,
        2.1595318494748978,
        0.43386778589085612
    ],
    [
        4
    ],
    # ... etc.
]

您可以想象这是一种数据形式,它在一列中捕获事件的三个特征(三个高精度数字),在第二列中包含事件编号。你知道吗

我想洗牌这两列列表,这样的事件及其相应的事件编号是洗牌。请注意,我不想无序排列事件特征的列表。因此,在本例中,洗牌的结果可能是:

[
    [
        0.121282446303956,
        2.1595318494748978,
        0.43386778589085612
    ],
    [
        3
    ],
    [
        0.121282446303956,
        2.1595318494748978,
        0.43386778589085612
    ],
    [
        4
    ],
    [
        0.121282446303956,
        2.1595318494748978,
        0.43386778589085612
    ],
    [
        1
    ],
    [
        0.121282446303956,
        2.1595318494748978,
        0.43386778589085612
    ],
    [
        2
    ],
    # ... etc.
]

您可以看到事件的顺序已从1、2、3、4更改为3、4、1、2。你知道吗

做这种洗牌的好方法是什么?你知道吗


Tags: 数据import列表etc事件代表random特征

热门问题