gpt4 book ai didi

python - 将值添加到成对值列表

转载 作者:行者123 更新时间:2023-12-05 04:19:09 24 4
gpt4 key购买 nike

我有一个数组,其中有成对的数字表示模型域中的行、列值。我正在尝试添加图层值以获得布局、行、列的列表。

我有一个数组 rowcol:

array([(25, 65), (25, 66), (25, 67), (25, 68), (26, 65), (26, 66),
(26, 67), (26, 68), (26, 69), (27, 66), (27, 67), (27, 68),
(27, 69), (28, 67), (28, 68)], dtype=object)

我想给每对加一个 8,这样看起来像

array([(8, 25, 65), (8, 25, 66), (8, 25, 67), (8, 25, 68), (8, 26, 65), (8, 26, 66),
(8, 26, 67), (8, 26, 68), (8. 26, 69), (8, 27, 66), (8, 27, 67), (8, 27, 68),
(8, 27, 69), (8, 28, 67), (8, 28, 68)], dtype=object)

我创建了一个与 rowcol 长度相同的新数组(层),并将 2 压缩为:

layrowcol = list(zip(layer, rowcol))

最后是:

[(8, (25, 65)), (8, (25, 66)), (8, (25, 67)), (8, (25, 68)), (8, (26, 65)), (8, (26, 66)), (8, (26, 67)), (8, (26, 68)), (8, (26, 69)), (8, (27, 66)), (8, (27, 67)), (8, (27, 68)), (8, (27, 69)), (8, (28, 67)), (8, (28, 68))]

所以它有点管用,但效果不佳。有没有一种方法可以将它们组合起来并省去不需要的括号,或者有更好的方法可以在不使用 zip() 的情况下将层值添加到每对。感谢您的帮助。

最佳答案

您可以使用 numpy.insert .

>>> import numpy as np
>>> a = np.array([(25, 65), (25, 66), (25, 67), (25, 68), (26, 65), (26, 66),(26, 67), (26, 68), (26, 69), (27, 66), (27, 67), (27, 68),(27, 69), (28, 67), (28, 68)], dtype=object)
>>> b = np.insert(a, 0, 8, axis=1)

输出:

array([[8, 25, 65],
[8, 25, 66],
[8, 25, 67],
[8, 25, 68],
[8, 26, 65],
[8, 26, 66],
[8, 26, 67],
[8, 26, 68],
[8, 26, 69],
[8, 27, 66],
[8, 27, 67],
[8, 27, 68],
[8, 27, 69],
[8, 28, 67],
[8, 28, 68]], dtype=object)

如果你想回到元组列表

>>> list(map(tuple, b))
[(8, 25, 65),
(8, 25, 66),
(8, 25, 67),
(8, 25, 68),
(8, 26, 65),
(8, 26, 66),
(8, 26, 67),
(8, 26, 68),
(8, 26, 69),
(8, 27, 66),
(8, 27, 67),
(8, 27, 68),
(8, 27, 69),
(8, 28, 67),
(8, 28, 68)]

关于python - 将值添加到成对值列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74944224/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com