通过python,将excel中的数据写入二维列表
需求:读取Excel表中数据,每行数据放在一个列表中,再把所有列表都存入到一个列表中,形成二维列表。
实现方法:导入可在Python处理Excel表格数据的模块。
excel表:

方法一:xlwings
了解到xlwings很强大,但是折戟沉沙(本地环境问题)。
1. 写一个测试demo如下:
import xlwings as xw # 打开excel,参数visible表示处理过程是否可视,add_book表示是否打开新的Excel程序
with xw.App(visible=True, add_book=False) as app:
# 创建一个工作薄
book = app.books.add()
# 工作薄中创建一个sheet表
sht = book.sheets.add()
# 向表格的A1单元格写入“Hello Python”
sht.range('A1').value = 'Hello Python'
# 保存
book.save('./test.xlsx')
2. 代码执行结果:
"D:\Program Files\python3\python.exe" "D:\Program Files\python3\Zyl\demo71.py"
Traceback (most recent call last):
File "D:\Program Files\python3\Zyl\demo71.py", line 4, in <module>
with xw.App(visible=True, add_book=False) as app:
File "D:\Program Files\python3\lib\site-packages\xlwings\main.py", line 294, in __init__
self.impl = engines.active.apps.add(
File "D:\Program Files\python3\lib\site-packages\xlwings\main.py", line 203, in add
return App(impl=self.impl.add(**kwargs))
File "D:\Program Files\python3\lib\site-packages\xlwings\_xlwindows.py", line 497, in add
return App(spec=spec, add_book=add_book, xl=xl, visible=visible)
File "D:\Program Files\python3\lib\site-packages\xlwings\_xlwindows.py", line 521, in __init__
self._xl = COMRetryObjectWrapper(DispatchEx("Excel.Application"))
File "D:\Program Files\python3\lib\site-packages\win32com\client\__init__.py", line 145, in DispatchEx
dispatch = pythoncom.CoCreateInstanceEx(
pywintypes.com_error: (-2147024894, '系统找不到指定的文件。', None, None) Process finished with exit code 1
百度搜索该问题,很多回答都是说安装了WPS导致的该问题,我的电脑并未安装WPS,无法用网上搜索到的解决方案解决。还有的说要根据报错修改源码,比较麻烦,放弃。
方法二:xlrd
该方法可将excel数据转化为二维列表,但是列表的中的数据格式发生变异。
1. 代码实现如下:
import xlrd
# coding=utf-8 #读取文件
def read_excel(files, sheet, row):
try:
workbook = xlrd.open_workbook(files)
table = workbook.sheet_by_name(sheet)
nrows = table.nrows # 表的行数
value_list = []
for i in range(row, nrows):
rowvalue = table.row_values(i)[0:5]
value_list.append(rowvalue)
print(value_list)
return value_list except:
print('文件读取失败!')
# 调用函数
read_excel(r'D:\Program Files\python3\Zyl\sgs2.xls','压测结果',2)
2. 代码执行结果:

时间、数字的格式不对,再转化比较麻烦,该方法舍弃。
方法三:openpyxl
这也是一款强大的工具,满足当前需求,采用。
1. 代码实现如下:
import openpyxl #读取文件
def read_excel(files, sheet):
try:
my_list = [] # 按行存放Excel表中数据
wb = openpyxl.load_workbook(files)
ws = wb[sheet]
maxrows = ws.max_row # 获取最大行
for i in range(maxrows-2):
temp_list = []
for each in ws.iter_cols( max_col=5,min_row=3):
temp_list.append(each[i].value)
my_list.append(temp_list) print(my_list)
print(ws)
return my_list except:
print('文件读取失败!')
# 调用函数
read_excel(r'result.xlsx','压测结果')
2. 代码执行结果:

excel表中的数据写入到列表中后,格式没有发生变化。 nice!!!
通过python,将excel中的数据写入二维列表的更多相关文章
- 使用Python将Excel中的数据导入到MySQL
使用Python将Excel中的数据导入到MySQL 工具 Python 2.7 xlrd MySQLdb 安装 Python 对于不同的系统安装方式不同,Windows平台有exe安装包,Ubunt ...
- 利用Kettle 从Excel中抽取数据写入SQLite
SQLite作为一种数据库可以配置为Kettle的数据输入和输出,这个例子是从Excel中抽取数据然后写入到SQLite中 配置测试并成功后如下 下面是配置步骤: Excel输入配置 sqlite配置 ...
- 从txt文件中读取数据放在二维数组中
1.我D盘中的test.txt文件内的内容是这样的,也是随机产生的二维数组 /test.txt/ 5.440000 3.4500006.610000 6.0400008.900000 3.030000 ...
- Python读取Excel中的数据并导入到MySQL
""" 功能:将Excel数据导入到MySQL数据库 """ import xlrd import MySQLdb # Open the w ...
- python读取excel中的数据
import numpy as np import matplotlib.pyplot as plt import pandas as pd #df = pd.read_excel('/Users/N ...
- 用python在excel中读取与生成随机数写入excel中
今天是我第一次发博客,就关于python在excel中的应用作为我的第一篇吧. 具体要求是:在一份已知的excel表格中读取学生的学号与姓名,再将这些数据放到新的excel表中的第一列与第二列,最后再 ...
- 将Oracle数据库中的数据写入Excel
将Oracle数据库中的数据写入Excel 1.准备工作 Oracle数据库"TBYZB_FIELD_PRESSURE"表中数据如图: Excel模板(201512.xls): 2 ...
- 从Excel中读取数据并批量写入MySQL数据库(基于MySQLdb)
一.Excel内容如下,现在需要将Excel中的数据全部写入的MySQL数据库中: 二.连接MySQL的第三方库使用的是“MySQLdb”,代码如下: # -*- coding:utf-8 -*-im ...
- python 去除Excel中的重复行数据
导入pandas import pandas as pd 1.读取excel中的数据: frame = pd.DataFrame(pd.read_csv('excel的绝对路径.csv'', 'She ...
- C# Unity游戏开发——Excel中的数据是如何到游戏中的 (二)
本帖是延续的:C# Unity游戏开发——Excel中的数据是如何到游戏中的 (一) 上个帖子主要是讲了如何读取Excel,本帖主要是讲述读取的Excel数据是如何序列化成二进制的,考虑到现在在手游中 ...
随机推荐
- npm i 与 npm install 的区别
我们在平时运用的时候一般用 npm i 来代替 npm install(为npm i 的简写) 但是在实际应用中两者是有些不同的(查阅总结): 1.使用npm i 安装的模块和依赖,使用npm uni ...
- 软硬件--智能穿戴常见BUG及原因分析
软硬件--智能穿戴常见BUG及原因分析 1.手表有常亮功能(类似熄屏表盘),开启常亮暗屏状态下 按侧键,设备时间出现倒退现象:频率切换相关问题: 2.手表有常亮功能(类似熄屏表盘),开启常亮暗屏状态下 ...
- GRPC与 ProtoBuf 的理解与总结
转载请注明出处: 1.GRPC 官网:https://www.grpc.io/ gRPC 官方文档中文版:http://doc.oschina.net/grpc RPC 框架的目标就是让远程服务调用更 ...
- AcWing 1019. 庆功会
为了庆贺班级在校运动会上取得全校第一名成绩,班主任决定开一场庆功会,为此拨款购买奖品犒劳运动员. 期望拨款金额能购买最大价值的奖品,可以补充他们的精力和体力. 输入格式 第一行二个数n,m,其中n代表 ...
- centos linux系统安装详解
打开vmware,版本差异区别不大 选择创建新的虚拟机 选择典型,是默认选项不用改,点击下一步 选择稍后安装操作系统(默认选项不用改),点击下一步 选择linux,并且版本改为centos 64位,点 ...
- 推荐一个日历转换开源工具库,支持C#、Java、PHP等主流的语言
日历对我们来说,最熟悉的就是阳历和农历,在中国每年都有固定的节日.节气.中国特有传统节日,有些节日是固定的,但是节气这些都需要我们经过一定规则换算出来. 所以,今天给大家推荐一个开源库,它支持阳历.阴 ...
- RWKV – transformer 与 RNN 的强强联合
在 NLP (Natural Language Processing, 自然语言处理) 领域,ChatGPT 和其他的聊天机器人应用引起了极大的关注.每个社区为构建自己的应用,也都在持续地寻求强大.可 ...
- Win10环境配置(一)——C\C++篇
Win10环境配置(一)--C\C++篇 1.工具准备 官网下载地址:https://sourceforge.net/projects/mingw-w64/ MinGW64下载地址:https://s ...
- 为什么说 Go 语言字符串是不可变的?
原文链接: 为什么说 Go 语言字符串是不可变的? 最近有读者留言说,平时在写代码的过程中,是会对字符串进行修改的,但网上都说 Go 语言字符串是不可变的,这是为什么呢? 这个问题本身并不困难,但对于 ...
- Bio+IT 爱好者社区,欢迎你!
生物信息学是一个跨学科的大领域,一直以来,做生物信息分析的工程师都需要跟 IT 打交道. 现实问题是,有很多生物学.医学.遗传学背景的 Bio 人对生物领域拥有非常专业的知识经验,而对 IT 领域知之 ...