Python xlrd excel文件操作代码实例
作者:新兵蛋子 发布时间:2021-05-19 21:52:18
标签:Python,xlrd,excel
打开文件
import xlrd
data = xlrd.open_workbook('路径')
获取文件中所有工作表的名称。
data.sheet_names()
相当于进入文件中的一个工作表。
table = data.sheet_by_name('Sheet1')
查看工作表一共有几行
rowNum = table.nrows
查看工作表一共有几列
colNum = table.ncols
查看第一行所有的名称。
farst = table.row_values(0)
查看第一列所有的名称(其中包含合并单元格的)
farst = table.col_values(0)
查看读取内容的格式:(int类型)0empty,1string,2number,3date,4boolean,5error
小应用:
将文件内的内容按照对应关系一一对应,并将空的去除,判断是否有int类型,如果有将转换。
#!/usr/bin/env python
# _*_ coding:utf-8 _*_
# __author__ = 'XinBing'
import xlrd
data = xlrd.open_workbook('D:\python\交通费报销单.xlsx')
#打开文件
# data.sheet_names()
# #获取文件中所有工作表的名称。
table = data.sheet_by_name('Sheet1')
#相当于进入文件中的一个工作表。
rowNum = table.nrows
#查看工作表一共有几行 10
colNum = table.ncols
#查看工作表一共有几列 3
farst = table.row_values(0)
#查看第一行所有的名称。
#简单将文件第一行的数值和第二行一一对应,并添加到字典中,最后添加到列表中。
lis = []
for i in range(1,rowNum):
#第二行开始循环。
dic = {}
for i2 in range(colNum):
#第一列开始。
data = table.cell_value(i,i2)
dic[farst[i2]] = data if table.cell(i,i2).ctype != 2 else int(data)
# #判断类型是否为数字类型。针对循环出来的行数和列数将内容打印出来。
for k,y in dic.items():
# 判断字典内容里有没有包含空的元素,如果有就不写入到字典中。默认是全部写入
if not y:
dic= {}
break
if dic :
lis.append(dic)
print(lis)
#[{'费用名称': '火车票', '金额(元)': 921, '单据张数': 2}, {'费用名称': '油票', '金额(元)': 3306, '单据张数': 13}, {'费用名称': '合计', '金额(元)': 4227, '单据张数': 15}]
来源:https://www.cnblogs.com/xinbing/p/12449659.html


猜你喜欢
- 为了方便的实现记录数据、修改数据没有精力去做一个完整的系统去管理数据。因此,在python的控制台直接实现一个简易的数据管理系统,包括数据的
- 在 Go语言中通过调用 reflect.TypeOf 函数,我们可以从一个任何非接口类型的值创建一个 reflect.Type 值。refl
- 我就废话不多说了,大家还是直接看代码吧~clf=KMeans(n_clusters=5) #创建分类器对象fit_clf=clf.fit(X
- 一、python魔法方法Python的魔法方法会在特定的情况下自动调用,且他们的方法名通常被双下划线包裹,之前我们学习的构造函数和析构函数就
- 前言:对于Web开发人员,弹出框和提示框的使用肯定不会陌生,比如常见的表格新增和编辑功能,一般常见的主要有两种处理方式:行内编辑和弹出框编辑
- 今天帮一同学导入一个excel数据,我把excel保存为txt格式,然后建表导入,失败!分隔符格式不匹配,无法导入!!!!怎么看两边都是\t
- 想要利用Python来操作word文档可以使用docx模块.安装: pip install python-docxfrom docx imp
- 先说说问题起因:测试同学在自己电脑上测试不同的后台,但数据库使用的是相同的名称。于是创建了新的SQL Server实例,而新实例需要指定不同
- 桑基图桑基图(Sankey diagram),即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,图中延伸的分支的宽度对应数据流
- 视图视图是一个虚拟表(非真实存在),其本质是根据SQL语句获取动态的数据集,并为其命名,用户使用时只需使用名称即可获取结果集,并可以将其当作
- 可能许多同学对SQL Server的备份和还原有一些了解,也可能经常使用备份和还原功能,我相信除DBA之外我们大部分开发员队伍对备份和还原只
- 比如我们要读取一个桌面路径下的文件 设计 一个函数 怎么写才能正确?注意以下两点就可以了1、对于一个路径 例如C:\Users\xiaomi
- Matplotlib可以无缝的处理LaTex字体,在图中加入数学公式from matplotlib.patches import Polyg
- 先看几个数据。。一大堆文字滴,不管人家是不是故意的,字数还是这样:news.163.cn:14px,39个中文字符 news.sina.co
- 如下所示:enc = OneHotEncoder(categorical_features=np.array([0,1,2]),n_valu
- 一般上电子商务网站买东西的用户分三种:随便看看,就是不买先看看,买不买再说就是来买东西的这样的需求反应到产品页的购买按钮上,我们一般会看到购
- 闲暇时间用tkinter写了个简易计算器,可实现简单的加减乘除运算,用了Button和Entry2个控件,下面是代码,只是简单的用了偏函数p
- 基于python的Appium进行b站直播消费记录爬取之前看文章说fiddler也可以进行爬取,但尝试了一下没成功,这次选择appium进行
- TKinterPython 的 GUI 库非常多,之所以选择 Tkinter,一是最为简单,二是自带库,不需下载安装,随时使用,跨平台兼容性
- 一、检查系统版本[root@node ~]# cat /etc/os-release NAME="CentOS Linux&quo