gpt4 book ai didi

python - 在 Python 中按索引合并列表

转载 作者:太空狗 更新时间:2023-10-30 01:10:55 24 4
gpt4 key购买 nike

场景:我从一个 N 元组文件中检索了 3 个列表,现在我试图将它们组合成一个有组织的列表。

原始格式:

+--------+---------+--------+
| 100021 | hasdata | y |
+--------+---------+--------+
| 100021 | name | USER1 |
+--------+---------+--------+
| 100021 | extra1 | typer |
+--------+---------+--------+
| 100021 | extra2 | reader |
+--------+---------+--------+
| 50003 | hasdata | y |
+--------+---------+--------+
| 50003 | name | USER2 |
+--------+---------+--------+
| 50003 | extra1 | reader |
+--------+---------+--------+
| 50003 | extra2 | writer |
+--------+---------+--------+
| 50003 | extra3 | coder |
+--------+---------+--------+
| 30007 | hasdata | n |
+--------+---------+--------+
| 30007 | name | 0001 |
+--------+---------+--------+
| 30007 | extra1 | Null |
+--------+---------+--------+

在循环 ntriples 文件时,我生成了 3 个列表(每个都是上表的一列)。我现在正试图将它们匹配成这样的东西:

+--------+---------+-------+--------+--------+--------+
| | hasdata | name | extra1 | extra2 | extra3 |
+--------+---------+-------+--------+--------+--------+
| 100021 | y | USER1 | typer | reader | |
+--------+---------+-------+--------+--------+--------+
| 50003 | y | USER2 | reader | writer | coder |
+--------+---------+-------+--------+--------+--------+
| 30007 | extra2 | n | 0001 | Null | |
+--------+---------+-------+--------+--------+--------+

到目前为止,我使用的功能是:

def listOfTuples(l1, l2, l3): 
return list(map(lambda x, y, z:(x,y, z), l1, l2, l3))

但这只给了我一个直接合并相应的项目。

问题:我知道可以循环遍历列表并获取匹配项并手动构建数组/数据框。我的问题是是否有任何函数或包可以自动且以不太复杂的方式执行此操作?

Obs:我已经有办法通过手动循环生成数据帧。我只是想知道是否还有另一种更有效的方法。

最佳答案

如果我没理解错的话,你有一个列表,其中包含大小为三个对象的元组元素,你想将它们放在另一个元组中。你可以使用 zip 来实现这一点。

result = list(zip(list1, zip(*[(l1,l2,l3) for i in list1])))

关于python - 在 Python 中按索引合并列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55421861/

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