python生成excel文件的三种方式

4017ac8006fcea251e621f01a8d69f04.png

(永久免费,扫码加入)

转自:Python专栏

在我们做平常工作中都会遇到操作excel,那么今天写一篇,如何通过python操作excel。当然python操作excel的库有很多,比如pandas,xlwt/xlrd,openpyxl等,每个库都有不同的区别,具体的区别,大家一起来看看吧~

057910ecba70c4294dd7bc7e3b936a9b.png

 xlwt/xlrd

  • xlrd是对于Excel进行读取,xlrd 操作的是xls/xlxs格式的excel

  • xlwt是对于Excel进行读取,xlwt操作的是xls格式的excel

安装

xlrd是python的第3方库,需要通过pip进行安装

pip install xlrd

1、导入xlrd模块

2、打开Excel完成实例化

3、通过下标获取对应的表(可以通过表名获取)

4、通过列,行或者坐标获取表格的数据

安装

xlwt属于python的第3方库,需要通过pip进行安装

pip install xlwt

写入Excel数据

1、首先导入xlwt第3方库

2、创建一个workbook模块,相当于创建一个xlwt文件

3、通过add_sheet创建一个表格

4、使用write函数进行对表完成写的操作

5、把写完的数据导入到Excel中

9349f1753f7cd9dbb0aece6c05ecf8a9.png

 openpyxl

OpenPyXl是一个Python的模块  可以用来处理excle表格

安装:

xlrd是python的第3方库,需要通过pip进行安装

pip install openpyxl

使用时在代码内 from openpyxl import Workbook或者from openpyxl import load_workbook


区别在于前者不需要有excle文件存在  后者需要传入一个excle文件


前者可以凭空产生一个  后者不行


使用openpyxl 写入Excel数据

1、获取workbook
2、获取 worksheet
3、再然后 获取单元格  进行操作
4、保存文件

415d318f911a10652380fd59bf4084f1.png

 pandas

写入Excel中数据的除了xlwt和openpyxl之外。Pandas也是可以实现这种功能的。

它纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具,能使我们快速便捷地处理数据。接下来我们就看看如何用pandas读写excel。

1. 读取excel

读取excel主要通过read_excel函数实现,除了pandas还需要安装第三方库xlrd。

2. 写入excel

写入excel主要通过pandas构造DataFrame,调用to_excel方法实现。

今天我们准备读取的数据是之前爬取瓜子二手车网站的一些数据,部分数据展示如下:

c830f40a6b3b4152722228e3d6f79f1f.png

我们今天要展示的就是使用上述介绍的三种方法将txt文档的数据写入到excel中。

# 标题列表
columns = []
# 数据列表
datas = []

with open('二手车.txt', encoding='utf-8') as fin:
    # 首行判断
    is_first_line = True
    for line in fin:
        line = line[:-1]
        if is_first_line:
            is_first_line = False
            columns = line.split('\t')
            continue
        datas.append(line.split('\t'))

ic(columns)
ic(datas)

读取的行列表和数据列表数据展示如下:

35108d606323d76211a7aac65d94f154.png

数据成功读取出来,接下来我们使用三种方式写入到excel中

使用xlwt生成xls的excel文件

# 使用xlwt生成xls的excel文件
import xlwt

workbook = xlwt.Workbook(encoding='utf-8')
sheet = workbook.add_sheet('瓜子二手车')

for col, column in enumerate(columns):
    sheet.write(0, col, column)

for row, data in enumerate(datas):
    for col, column_data in enumerate(data):
        sheet.write(row+1, col, column_data)

workbook.save('瓜子二手车1.xls')

ef1e15a89d736365a2dfab46d9f17f9e.png

使用openpyxl生成xlsx的excel文件

# 使用openpyxl生成xlsx的excel文件
from openpyxl import Workbook
workbook = Workbook()

sheet = workbook.active
sheet.title = '默认title'
sheet.append(columns)
for data in datas:
    sheet.append(data)
workbook.save('瓜子二手车2.xlsx')

05fdf332fe192d3b853e00158f067c9b.png

使用pandas生成xlsx的excel文件

# 使用pandas生成xlsx的excel文件
import pandas as pd
rcv_data = pd.read_csv('二手车.txt', sep='\t')
rcv_data.head()
ic(rcv_data)
rcv_data.to_excel('瓜子二手车3.xlsx', index = False)

d4c17aed8f25da726a156247892cfba0.png

以上就是今天给大家介绍的三种数据写入excel的方法,这写方法在实际工作中需求还是很高的,有兴趣的小伙伴可以操作一下。


最后推荐一下我们的会员群,目前有风投天使投资人,猎头HR,抖音大V,情感博主,律师,心理咨询师,医疗销售,地产,保险,钢琴老师,运营商,企业咨询,跨境电商,建筑,互联网行业的数据分析师,后端开发,python测试等行业的同学加入。

性价比超高的星球

目前星球420+人,专栏的内容秘籍已经更新了41篇,每天都有星球发布自己心得。只花一份钱可以学:

Python : python 入门课程44节+Django专栏9节+趣味实战案例

chatgpt :入门,进阶,趣味办公,高级课程

AI绘画:Mj的基础,入门,进阶,小红书玩法

如果你想学Python,又想学ChatGPT,又想学AI绘画,只想花一份钱欢迎加入我们星球会员群,还能认识很多牛人!

加入就送ChatGPT独立账号

94ca01c8651f9fb9e13f6e1838fbb351.jpeg

另外还送ChatGPT高级视频课程

原价99,现在免费送星球会员

3a5c2e75117cc666eccd9382a873f1dd.jpeg

微信长按试看内容

三天内不满意可直接退款!!!

0fd7a20bd15b4082f327c4763f44ea5c.png

推荐阅读:
入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径
干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影
趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!
AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影
小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!|  再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|

猜你喜欢

转载自blog.csdn.net/cainiao_python/article/details/131179392
今日推荐