首页 > 编程语言 >Python生成excel文件的三种方式

Python生成excel文件的三种方式

时间:2024-04-10 14:30:01浏览次数:20  
标签:xlwt openpyxl Python excel 三种 xlrd data

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

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中

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、保存文件

pandas

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

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

1. 读取excel

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

2. 写入excel

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

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

我们今天要展示的就是使用上述介绍的三种方法将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)

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

数据成功读取出来,接下来我们使用三种方式写入到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')

使用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')

使用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)

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

学习资源推荐
除了上述分享,学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python!

标签:xlwt,openpyxl,Python,excel,三种,xlrd,data
From: https://blog.csdn.net/CSDN_224022/article/details/137594119

相关文章

  • 10个极简Python代码
    1、列表重复元素判定以下方法可以检查给定列表是不是存在重复元素,它会使用set()函数来移除所有重复元素。2、字符元素组成判定检查两个字符串的组成元素是不是一样的。3、内存占用4、字节占用下面的代码块可以检查字符串占用的字节数。5、打印N次字符串该......
  • python random 模块
    random说明生成伪随机数。不应将此模块的伪随机生成器用于安全目的。有关安全性或加密用途,应使用secrets模块。设置随机数种子seed(a=None, version=2)初始化随机数生成器。如果使用相同的种子,将会生成相同的随机数序列。importrandomrandom.seed(23)print(random.r......
  • python 会员信息管理系统2.0
    问题介绍综合案例实现:会员管理系统设计与实现-V3利用所学习的知识点 ,结合会员管理系统的分析与实现, 了解面向对象开发过程中类内部功能的分析方法,系统讲解 Python语法、控制结构、四种典型序列 ,函数定义以及面向对象语法和模块的应用。(使用面向对象的思想)面向对象编......
  • 如何使用VBA关闭Excel后台进程?
    以下是使用VBA关闭Excel后台进程的示例代码: SubCloseExcelProcess()   DimobjWMIServiceAsObject  DimcolProcessesAsObject  DimobjProcessAsObject  DimstrComputerAsString  DimstrExcelAsString     '设置要关闭的进......
  • 零基础入门学习Python第一阶
    01初识PythonPython简介Python的历史1.1989年圣诞节:GuidovonRossum开始写Python语言的编译器。2.1991年2月:第一个Python编译器(同时也是解释器)诞生,它是用C语言实现的(后面),可以调用C语言的库函数。在最早的版本中,Python已经提供了对“类”,“函数”,“异常处理”等构造块的......
  • 【Python使用turtle库随便画一些乱七八糟的东西】
    1、画一些五颜六色乱七八糟的Python代码如下:importrandomimportturtle#导入turtle和random库t=turtle.Turtle()#创建海龟笔t#创建一个常用颜色列表用来随机抽取颜色colors=["red","orange","lime","yellow","blue","indigo","p......
  • 【深入理解Java IO流0x07】搞懂Java中的三种IO模型的区别:BIO & NIO & AIO
    1.引言NIO这一块是面试时比较喜欢问的问题,所以我们需要仔细学习。但是在直接讲NIO之前,需要大家对Java的IO模型首先有一个整体的认识,这样才方面后续我们深入探究NIO。我们接下来就开始吧!2.IO何为IO?I/O(Input/Outpu)即输入/输出。我们先从计算机结构的角度来解读一下......
  • Python计算两个质谱谱图的相似度——Matchms
    在做实验的时候需要在python环境下比较两个谱图的相似度,对于这个需求就遇到两个问题:如何导入谱图,让其在python环境中显示如何对比相似度,谱图之间的相似度与向量之间的相似度有何差别我调研了一些库可以用在python中去处理谱图,包括pyteomics、spectrum_utils还有今天要介绍的......
  • 数据分析工具——Excel超级透视表:Power Pivot
    01、什么是PowerPivot?数据透视表的英文叫做PivotTable,那PowerPivot又是什么东东?它们两个有什么区别呢?通过上一篇文章对Excel数据透视表PivotTable的介绍,大家应该对数据透视表有了基本的了解,这是Excel学习中的重中之重,也是我们学习PowerPivot的基础。如果还没有熟练掌......
  • Python教程‘r’的使用技巧
    嗨,大家好!今天,我们将探讨Python中一个重要但经常被忽视的小技巧'r'。 在Python中,r是一个前缀,它用于处理原始字符串(rawstrings)。原始字符串与普通字符串不同,它们让你在字符串中使用反斜杠符号\而不必担心它们被解释成转义字符。为什么要使用原始字符串?原始字符串......