gpt4 book ai didi

python - 在python中加入列表和列表列表

转载 作者:行者123 更新时间:2023-11-29 06:25:11 25 4
gpt4 key购买 nike

我遇到了一个应该是简单的问题,但我尝试了 3 个小时不同的东西,但我无法解决它。

我有一个 pymysql 返回查询结果。我不能分享确切的例子,但这个稻草人应该这样做。

cur.execute("select name, address, phonenum from contacts")

这完美地返回了我抓取的结果

results = cur.fetchall()

然后转换成我想要的列表对象

data = list(results)

不幸的是,这不包括 header ,但您可以使用 cur.description(包含元数据,包括但不限于 header )获取它。我将其插入列表

Header=[]
for n in cur.description:
header.append(str((n[0])))

所以我的标题看起来像:

['name','address','phonenum']

我的结果如下:

[['Tom','dublin','12345'],['Bob','Kerry','56789']]

我想在 pandas 中创建一个数据框,然后对其进行透视,但它需要列标题才能正常工作。我之前一直将一个完整的 csv 导入到一个包含标题的 pandas DF 中,所以这一切都很顺利,但现在我需要直接从数据库中获取这些数据,所以我在想,这很简单,我只是加入两个列表,嘿 presto我有我要找的东西,但是当我尝试追加时,我实际上得到了这个:

['name','address','phonenum',['Tom','dublin','12345'],['Bob','Kerry','56789']]

当我需要这个的时候

[['name','address','phonenum'],['Tom','dublin','12345'],['Bob','Kerry','56789']]

有人有什么想法吗?非常感谢!

最佳答案

添加列表连接内容:

In [17]: [1] + [2,3]
Out[17]: [1, 2, 3]

即使内容本身就是列表也是如此:

In [18]: [[1]] + [[2],[3]]
Out[18]: [[1], [2], [3]]

所以:

In [13]: header = ['name','address','phonenum']

In [14]: data = [['Tom','dublin','12345'],['Bob','Kerry','56789']]

In [15]: [header] + data
Out[15]:
[['name', 'address', 'phonenum'],
['Tom', 'dublin', '12345'],
['Bob', 'Kerry', '56789']]

In [16]: pd.DataFrame(data, columns=header)
Out[16]:
name address phonenum
0 Tom dublin 12345
1 Bob Kerry 56789

请注意,也可以使用 pandas.read_sql 将数据库中的数据加载到 DataFrame 中。 .

关于python - 在python中加入列表和列表列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31474357/

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