如何把一个python列表(有很多个元素)变成一个excel表格的第一列?

大家好,我是Python进阶者。

一、前言

前几天在Python最强王者群有个叫【麦当】的粉丝问了一个关于Python如何把一个python列表(有很多个元素)变成一个excel表格的第一列的问题,这里拿出来给大家分享下,一起学习。

image.png

二、解决过程

这里给出【dcpeng】和【德善堂小儿推拿-瑜亮老师】大佬的解答,一共两个方法,一起来看看吧!

【dcpeng】解答

这里给出了两个思路,照着这个思路去的话,问题不大。

image.png

import openpyxl

excel_file = openpyxl.Workbook()
worksheet = excel_file.active
list1 = ['麦当', 'dcpeng', '月神', '王子', '冯诚', '亮哥', '沈复']
for i in range(len(list1)):
    worksheet.cell(i+1, 1, list1[i])
excel_file.save('result.xlsx')

这个方法是常规写法,思路也很直接,不过效果可能没有下面这个方法高效。下面这个方法是Pandas助阵,代码如下:

import pandas as pd
list1 = ['麦当', 'dcpeng', '月神', '王子', '冯诚', '亮哥']
df = pd.DataFrame(list1)
df.to_excel('666.xlsx')

image.png

【德善堂小儿推拿-瑜亮老师】解答

这里给出了很多代码,也有转置等操作,干货还是很多的,代码如下:

import pandas as pd

lst=list(range(10))
print(lst)
df=pd.DataFrame(lst)
print(df)
# 存为列
#df.to_excel('list.xlsx')
# 列转行
df2=df.T
print(df2)
# 存为行
#df2.to_excel('list2.xlsx')

new1=[9,8,7,6,5,4,3,2,1,0]
new2=[1,1,1,1,1,2,2,2,2,2]
new3=[3,3,3,3,3,4,4,4,4,4]
# 下面这行会直接把第一列数据替换
df[0]=new1

# 在最后面添加一列
df["新"]=new2

# 在最前面插入一列,方法一
col_names=df.columns.tolist() 
col_names.insert(0, '新列1') 
df3=df.reindex(columns=col_names,fill_value=0) 
print(df3)

# 在最前面插入一列,方法二
df3.insert(0,'新列2',new3)
print(df3)

【瑜亮】老师在手机上编程的,真是太强了。

image.png

三、总结

大家好,我是Python进阶者。这篇文章基于粉丝提问,针对如何把一个python列表(有很多个元素)变成一个excel表格的第一列的问题,给出了具体说明和演示,文中给了两个方法,顺利地帮助粉丝解决了问题。应该还要其他方法的,如果你想到了,记得私信我,一起学习交流噢!

最后感谢粉丝【麦当】提问,感谢【dcpeng】和【德善堂小儿推拿-瑜亮老师】大佬给出的示例和代码支持,感谢粉丝【吴老板】、【Zhang Zhiyu】、【沈复】、【老松鼠】、【艾希·觉罗】、【冫马讠成】、【月神】等人参与学习交流。

image.png

posted @ 2024-10-16 20:51  dcpeng  阅读(6)  评论(0编辑  收藏  举报