【文档操作】文本文件转excel文件

简介: Excel文件是我们常用的一种文件,在工作中使用非常频繁。Excel中有许多强大工具,因此用Excel来处理文件会给我们带来很多便捷。但是有时候我们拿到了文件不是Excel文件,而且我们又想用Excel中的工具,这个时候我们就可以想办法把这个文件转换成Excel文件了。今天我们就来实现一下,需要注意我们只能把有规律的文件转换成Excel,而且今天的内容也不是普遍通用的。只提供一种思路。

一、前言

Excel文件是我们常用的一种文件,在工作中使用非常频繁。Excel中有许多强大工具,因此用Excel来处理文件会给我们带来很多便捷。但是有时候我们拿到了文件不是Excel文件,而且我们又想用Excel中的工具,这个时候我们就可以想办法把这个文件转换成Excel文件了。今天我们就来实现一下,需要注意我们只能把有规律的文件转换成Excel,而且今天的内容也不是普遍通用的。只提供一种思路。

二、openpyxl模块

openpyxl模块是用来操作Excel文件的一个模块,还有很多模块可以做同样的事情,这里就不介绍了。

1、安装

安装只需要执行下面语句即可:

pip install openpyxl
复制代码

然后在代码中导入工作簿:

from openpyxl import Workbook
复制代码

这样我们就可以开始操作了。

2、简单操作

我们来看一些简单的操作:

from openpyxl import Workbook
# 创建工作簿
wb = Workbook()
# 激活
ws = wb.active
# 设置指定格的数据
ws['A1'] = 41
# 在下一行添加数据
ws.append([1, 2, 3])
# 保存
wb.save("1.xlsx")
复制代码

这里前面两步是基本操作,首先创建Workbook对象,然后调用active函数激活。然后我们通过下标的方式给指定坐标的位置添加数据。最后调用save方法保存文件。

三、文本文件转excel文件

上面的几个操作就足够我们今天的操作了,下面我们来看看如何将文本文件转换成Excel文件。

1、寻找规律

在文章开头说了,我们只能将有规律的文本文件转换成Excel,不然没有太多意义。所以我们第一步就是找规律。比如我们下面这个文件:

姓名,性别,年龄
zack,男,21
rudy,男,22
alice,女,20
atom,男, 23
复制代码

我们来看一下上面的数据,其中第一行是数据的字段。而后面几行就是真实数据了。而单个数据的属性值又由逗号隔开。这种规律非常明显,很适合我们今天的内容。不管仔细观察可以看到,逗号有中文的也有英文的,而且有的里面还包含了空格。知道这些后我们在转换的时候就需要针对性的处理一下了。

2、开始转换

首先我们要处理文本,然后再写入Excel,具体代码如下:

from openpyxl import Workbook
wb = Workbook()
ws = wb.active
# 处理文件
with open("test.txt", "r", encoding="utf-8") as f:
    # 把逗号替换成统一的\t
    content = f.read().replace(",", "\t").replace(",", "\t")
    # 根据换行拆分内容
    lines = content.split("\n")
    # 提取标题
    titles = lines[0].split("\t")
    titles.insert(0, "")
    # 标题写入excel
    ws.append(titles)
    # 写入内容
    for i, line in enumerate(lines[1:]):
        item = line.split("\t")
        item.insert(0, i)
        ws.append(item)
wb.save("1.xlsx")
复制代码

经过上面的处理,我们就成功将文本转换成excel了,下面是结果图:

网络异常,图片无法展示
|

效果正是我们想要的,大家可以根据不同需求不同文件来修改处理的代码。

目录
相关文章
|
1月前
|
监控 数据处理 索引
使用Python批量实现文件夹下所有Excel文件的第二张表合并
使用Python和pandas批量合并文件夹中所有Excel文件的第二张表,通过os库遍历文件,pandas的read_excel读取表,concat函数合并数据。主要步骤包括:1) 遍历获取Excel文件,2) 读取第二张表,3) 合并所有表格,最后将结果保存为新的Excel文件。注意文件路径、表格结构一致性及异常处理。可扩展为动态指定合并表、优化性能、日志记录等功能。适合数据处理初学者提升自动化处理技能。
23 1
|
1月前
|
Java Apache
EasyPOI操作Excel从零入门
我们不造轮子,只是轮子的搬运工。(其实最好是造轮子,造比别人好的轮子)开发中经常会遇到excel的处理,导入导出解析等等,java中比较流行的用poi,但是每次都要写大段工具类来搞定这事儿,此处推荐一个别人造好的轮子,EasyPOI封装了Apache的POI技术,实现了基本的Excel导入、导出从此不再为Excel操作头疼~
20 2
EasyPOI操作Excel从零入门
|
1月前
|
安全 Java 数据库连接
jdbc解析excel文件,批量插入数据至库中
jdbc解析excel文件,批量插入数据至库中
21 0
|
1月前
|
存储 数据处理 索引
Python操作Excel常用方法汇总
Python操作Excel常用方法汇总
34 0
|
1月前
|
存储 数据可视化 数据处理
Python中读取Excel文件的方法
【2月更文挑战第18天】
66 4
Python中读取Excel文件的方法
|
1月前
|
前端开发 UED
前端解析Excel文件
前端解析Excel文件
34 0
|
1月前
|
SQL 数据可视化 数据处理
使用SQL和Python处理Excel文件数据
使用SQL和Python处理Excel文件数据
54 0
|
7天前
|
数据库
开发指南009-从list导出excel文件
从数据库返回一般是对象的列表,平台底层提供了从list转为excel文件的方法
|
8天前
|
数据挖掘 索引 Python
Python 读写 Excel 文件
Python 读写 Excel 文件
12 0
|
25天前
|
Python
python使用tkinter库,封装操作excel为GUI程序
python使用tkinter库,封装操作excel为GUI程序