下面我为你提供一份 Python 实现读 Excel 写入 txt 的完整实例教程。主要步骤如下:
在 Python 中读取和处理 Excel 文件需要安装第三方库,这里我们使用 pandas 和 openpyxl。可以通过以下命令来安装依赖库:
pip install pandas openpyxl
接下来,我们需要使用 pandas 库来读取 Excel 文件,可以使用 read_excel()
函数来实现。示例代码如下:
import pandas as pd
# 读取Excel文件
df = pd.read_excel('data.xlsx', sheet_name='Sheet1') # data.xlsx 是文件名,Sheet1 是表格名称
上面的代码会将 data.xlsx
文件中的 Sheet1
表格读入到内存中,并存储为一个 pandas 的 DataFrame 对象。
我们可以使用 pandas 提供的 API 对 DataFrame 中的数据进行处理,例如将表格数据按照一定规则进行过滤、排序、转换等操作。这里我们以将 Excel 文件中的数据转换为纯文本的行列表为例,代码如下:
# 将Excel数据转换为行列表
rows_list = df.values.tolist()
text_list = ['\t'.join(map(str, row)) for row in rows_list]
上述代码中,我们首先将 DataFrame 对象转换为行列表 rows_list
,然后使用列表推导式将每一行数据转换为文本格式,并将每一行文本存储在列表中,最终得到的就是一个包含所有行文本的列表 text_list
。
最后一步,我们需要将数据写入到文本文件中。这里我们使用 Python 自带的文件操作函数,将文本列表写入到指定的文件中。代码如下:
# 将文本写入txt文件
with open('data.txt', 'w') as f:
for line in text_list:
f.write(line + '\n')
上述代码中,我们使用 with open()
语句打开一个文件句柄 f
,然后遍历列表中的每一行文本,并将其写入到文件中。需要注意的是,在文本的末尾添加了个换行符 \n
。
下面我们通过两个示例来说明以上过程:
假设 Excel 文件中有以下数据:
姓名 | 年龄 | 体重(kg) |
---|---|---|
张三 | 25 | 60 |
李四 | 30 | 70 |
王五 | 35 | 80 |
我们想将这些数据转换为文本格式,并写入到一个 txt 文件中。这时我们将以上步骤整合在一起,得到以下完整的代码:
import pandas as pd
# 读取Excel文件
df = pd.read_excel('data.xlsx', sheet_name='Sheet1')
# 将Excel数据转换为行列表
rows_list = df.values.tolist()
text_list = ['\t'.join(map(str, row)) for row in rows_list]
# 将文本写入txt文件
with open('data.txt', 'w') as f:
for line in text_list:
f.write(line + '\n')
这样,运行代码后,就会生成一个名为 data.txt
的文本文件,其中包含了转换后的文本数据,如下所示:
张三 25 60
李四 30 70
王五 35 80
假设 Excel 文件中有以下数据:
id | 姓名 | 年龄 | 体重(kg) |
---|---|---|---|
1 | 张三 | 25 | 60 |
2 | 李四 | 30 | 70 |
3 | 王五 | 35 | 80 |
我们想将这些数据生成一些 SQL 插入语句,方便将数据插入到数据库中。这时我们可以先将 Excel 数据转换为 pandas DataFrame,然后通过字符串拼接的方式生成 SQL 语句。示例代码如下:
import pandas as pd
# 读取Excel文件
df = pd.read_excel('data.xlsx', sheet_name='Sheet1')
# 将Excel数据转换为行列表
rows_list = df.values.tolist()
# 生成SQL插入语句
sql_list = []
for row in rows_list:
sql = "INSERT INTO table_name (id, name, age, weight) VALUES ({}, '{}', {}, {});".format(row[0], row[1], row[2], row[3])
sql_list.append(sql)
# 将SQL语句写入txt文件
with open('data.sql', 'w') as f:
for line in sql_list:
f.write(line + '\n')
上述代码中,我们先将 Excel 数据读取到内存中,并转换为行列表 rows_list
。然后我们遍历 rows_list
,将每一行数据转换为 SQL 语句,并将 SQL 语句存储在列表 sql_list
中。最后,我们将 SQL 列表写入到名为 data.sql
的文本文件中。
通过以上代码,我们可以生成以下 SQL 语句:
INSERT INTO table_name (id, name, age, weight) VALUES (1, '张三', 25, 60);
INSERT INTO table_name (id, name, age, weight) VALUES (2, '李四', 30, 70);
INSERT INTO table_name (id, name, age, weight) VALUES (3, '王五', 35, 80);
这些 SQL 语句可以方便地插入到数据库中,从而实现批量插入数据的操作。
本文链接:http://task.lmcjl.com/news/13607.html