我已经在 python 中上下搜索过,但找不到我要找的东西。
假设我有以下示例:
date_list = [Mar 27 2015, Mar 26 2015, Mar 25 2015]
num_list_1 = [22, 35, 7]
num_list_2 = [15, 12, 2]
我如何组合这些列表,所以我的最终结果是这样的:
combined_list = [Mar 27 2015, 22, 15
Mar 26 2015, 35, 12
Mar 25 2015, 7, 2]
一旦我在 combine_list 变量中获得了数据,我希望能够将它传递给 for 循环并遍历每一行,如果日期不存在,则将其插入我的 SQLite 数据库,或者如果日期不存在,则更新现有记录日期已找到。
我有单独的列表,并且数据库插入工作正常。我不确定合并列表的正确方法。我在寻找 Pandas 数据框吗?还是别的什么?
任何能将我推向正确方向的指针将不胜感激
最佳答案
使用 zip
在三个列表上(我已经更正了 date_list 的格式,原始帖子没有正确的字符串):
>>> date_list = ["Mar 27 2015", "Mar 26 2015", "Mar 25 2015"]
>>> num_list_1 = [22, 35, 7]
>>> num_list_2 = [15, 12, 2]
>>> list(zip(date_list, num_list_1, num_list_2))
[('Mar 27 2015', 22, 15), ('Mar 26 2015', 35, 12), ('Mar 25 2015', 7, 2)]
使用简单的列表推导和 zip 作为单个列表:
>>> [item for items in zip(date_list, num_list_1, num_list_2) for item in items]
['Mar 27 2015', 22, 15, 'Mar 26 2015', 35, 12, 'Mar 25 2015', 7, 2]
注意:此答案不依赖于 pandas,如果您正在寻找在 pandas 中执行此操作的方法,请查看@EdChum 的答案。
关于python - 将多个列表水平组合成一个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29308660/