Python xlrd读取excel日期类型的2种方法


Posted in Python onApril 28, 2015

有个excle表格需要做一些过滤然后写入数据库中,但是日期类型的cell取出来是个数字,于是查询了下解决的办法。

基本的代码结构

data = xlrd.open_workbook(EXCEL_PATH)  

table = data.sheet_by_index(0)  

lines = table.nrows  

cols = table.ncols  

print u'The total line is %s, cols is %s'%(lines, cols) 

读取某个单元格:
table.cell(x, y).value 

x:行
y:列   
行,列都是从0开始

*  时间类型的转换,把excel中时间转成python 时间(两种方式)
excel某个单元格   2014/7/8

xlrd.xldate_as_tuple(table.cell(2,2).value, 0)   #转化为元组形式  

(2014, 7, 8, 0, 0, 0)  

xlrd.xldate.xldate_as_datetime(table.cell(2,2).value, 1)   #直接转化为datetime对象  

datetime.datetime(2018, 7, 9, 0, 0)  

table.cell(2,2).value   #没有转化  

41828.0 

源码查看:

# @param xldate The Excel number  

# @param datemode 0: 1900-based, 1: 1904-based.  

xldate_as_tuple(xldate, datemode)  

输入一个日期类型的单元格会返回一个时间结构组成的元组,可以根据这个元组组成时间类型
datemode 有2个选项基本我们都会使用1900为基础的时间戳
##  

# Convert an Excel date/time number into a datetime.datetime object.  

#  

# @param xldate The Excel number  

# @param datemode 0: 1900-based, 1: 1904-based.  

#  

# @return a datetime.datetime() object.  

#  

def xldate_as_datetime(xldate, datemode)

输入参数和上面的相同,但是返回值是一个datetime类型,就不需要在自己转换了

当然这两个函数都有相应的逆函数,把python类型变成相应的excle时间类型。

Python 相关文章推荐
Python命令行参数解析模块optparse使用实例
Apr 13 Python
Zabbix实现微信报警功能
Oct 09 Python
python获取多线程及子线程的返回值
Nov 15 Python
python pandas修改列属性的方法详解
Jun 09 Python
selenium使用chrome浏览器测试(附chromedriver与chrome的对应关系表)
Nov 29 Python
Python实现平行坐标图的两种方法小结
Jul 04 Python
python使用gdal对shp读取,新建和更新的实例
Mar 10 Python
jupyter notebook 使用过程中python莫名崩溃的原因及解决方式
Apr 10 Python
Python实现转换图片背景颜色代码
Apr 30 Python
浅谈python 调用open()打开文件时路径出错的原因
Jun 05 Python
通过实例了解python__slots__使用方法
Sep 14 Python
使用bandit对目标python代码进行安全函数扫描的案例分析
Jan 27 Python
Python发送email的3种方法
Apr 28 #Python
Python中使用partial改变方法默认参数实例
Apr 28 #Python
调试Python程序代码的几种方法总结
Apr 28 #Python
解析Python中的异常处理
Apr 28 #Python
python调用java模块SmartXLS和jpype修改excel文件的方法
Apr 28 #Python
Python EOL while scanning string literal问题解决方法
Sep 18 #Python
python中尾递归用法实例详解
Apr 28 #Python
You might like
Yii2实现让关联字段支持搜索功能的方法
2016/08/10 PHP
php实现的简单数据库操作Model类
2016/11/16 PHP
使用YII2框架实现微信公众号中表单提交功能
2017/09/04 PHP
利用Homestead快速运行一个Laravel项目的方法详解
2017/11/14 PHP
浅谈PHP匿名函数和闭包
2019/03/08 PHP
PHP生成随机码的思路与方法实例探索
2019/04/11 PHP
将string解析为json的几种方式小结
2010/11/11 Javascript
JScript分割字符串示例代码
2013/09/04 Javascript
表单提交前触发函数返回true表单才会提交
2014/03/11 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
2014/09/10 Javascript
js检查是否关闭浏览器的方法
2016/08/02 Javascript
jQuery序列化表单成对象的简单实现
2016/11/29 Javascript
原生js实现倒计时功能(多种格式调用)
2017/01/12 Javascript
vue实现某元素吸顶或固定位置显示(监听滚动事件)
2017/12/13 Javascript
Vue面试题及Vue知识点整理
2018/10/07 Javascript
node.js连接mysql与基本用法示例
2019/01/05 Javascript
如何使用pm2快速将项目部署到远程服务器
2019/03/12 Javascript
jquery获取input输入框中的值
2019/11/13 jQuery
react+antd 递归实现树状目录操作
2020/11/02 Javascript
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
[01:01:23]完美世界DOTA2联赛PWL S2 Forest vs FTD.C 第一场 11.26
2020/11/30 DOTA
ptyhon实现sitemap生成示例
2014/03/30 Python
2款Python内存检测工具介绍和使用方法
2014/06/01 Python
python实现在字符串中查找子字符串的方法
2015/07/11 Python
pandas的object对象转时间对象的方法
2018/04/11 Python
pandas.read_csv参数详解(小结)
2019/06/21 Python
如何用python批量调整视频声音
2020/12/22 Python
html5调用摄像头功能的实现代码
2018/05/07 HTML / CSS
世界上最大的隐形眼镜商店:1-800 Contacts
2018/11/03 全球购物
日本最大的彩色隐形眼镜销售网站:CharmColor
2020/09/09 全球购物
请编写一个 C 函数,该函数在给定的内存区域搜索给定的字符,并返回该字符所在位置索引值
2014/09/15 面试题
幼儿园中班新学期寄语
2014/01/18 职场文书
大学生优秀班干部事迹材料
2014/05/26 职场文书
大学生就业求职信
2014/06/12 职场文书
自主招生推荐信格式模板
2015/03/24 职场文书
铁人观后感
2015/06/16 职场文书