python读取excel日期内容读出来是数字-Python读取Excel,日期列读出来是数字的处理...
Python读取Excel,里面如果是日期,直接读出来是float类型,无法直接使用。
通过判断读取表格的数据类型ctype,进一步处理。
返回的单元格内容的类型有5种:
ctype: 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
ctype =sheet1.cell(iRow,iCol).ctype
参考示例如下:
1.准备一个Excel文件,文件名Book1.xlsx
从第2行的第1列开始向右,分别是2019年的7月的1、2、3、4日,2019-07-01、2019-07-02、2019-07-03、2019-07-04
A列单元格的类型:date
B列单元格的类型:Text
C列单元格的类型:Text
D列单元格的类型:Custom里的一种日期格式
2.Python文件,ReadExcelDemo.py,代码如下:
#! -*- coding utf-8 -*-#! @Time :2019/7/4 15:46#! Author :Frank Zhang#! @File :ReadExcelDemo.py#!SoftWare PyChart 5.0.3#! Python Version 3.7
importxlrdimportosimporttimefrom datetime importdatetimefrom xlrd importxldate_as_tupledefmain():
sPath=os.getcwd()
sFile= "Book1.xlsx"wb= xlrd.open_workbook(filename=sPath + "\" +sFile)
sheet1=wb.sheet_by_index(0)
nrows=sheet1.nrows
ncols=sheet1.ncolsfor iRow in range(1,nrows):for iCol inrange(ncols):
sCell=sheet1.cell_value(iRow,iCol)#Python读Excel,返回的单元格内容的类型有5种:
#ctype: 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
ctype =sheet1.cell(iRow,iCol).ctype#ctype =3,为日期
if ctype == 3:
date= datetime(*xldate_as_tuple(sCell, 0))
cell= date.strftime("%Y-%m-%d") #("%Y/%m/%d %H:%M:%S")
print(cell)#ctype =1,为字符串
elif ctype == 1:ifisVaildDate(sCell):
t1= time.strptime(sCell, "%Y-%m-%d")
sDate= changeStrToDate(t1,"yyyy-mm-dd")print(sDate)else:pass
defformatDay(sDay,sFormat):
sYear=str(sDay.year)
sMonth=str(sDay.month)
sDay=str(sDay.day)if sFormat == "yyyy-mm-dd":
sFormatDay= sYear +"-" +sMonth.zfill(2)+"-" +sDay.zfill(2)elif sFormatStyle == "yyyy/mm/dd":
sFormatDay= sYear +"/" +sMonth.zfill(2)+"/" +sDay.zfill(2)else:
sFormatDay= sYear+"-" + sMonth + "-" +sDayreturnsFormatDay"""功能:判断是否为日期"""
defisVaildDate(sDate):try:if ":" insDate:
time.strptime(sDate,"%Y-%m-%d %H:%M:%S")else:
time.strptime(sDate,"%Y-%m-%d")returnTrueexcept:returnFalse"""功能:把字符串格式的日期转换为格式化的日期,如把2019-7-1转换为2019-07-01"""
defchangeStrToDate(sDate,sFormat):
sYear=str(sDate.tm_year)
sMonth=str(sDate.tm_mon)
sDay=str(sDate.tm_mday)if sFormat == "yyyy-mm-dd":
sFormatDay= sYear +"-" +sMonth.zfill(2)+"-" +sDay.zfill(2)elif sFormatStyle == "yyyy/mm/dd":
sFormatDay= sYear +"/" +sMonth.zfill(2)+"/" +sDay.zfill(2)else:
sFormatDay= sYear+"-" + sMonth + "-" +sDayreturnsFormatDayif __name__ == "__main__":
main()
3.执行结果:
原文地址:https://www.cnblogs.com/SH170706/p/11133525.html
python读取excel日期内容读出来是数字-Python读取Excel,日期列读出来是数字的处理...相关推荐
- 使用readFile方法读取文件的内容,并判断文件是否读取成功(node)
2.2 读取指定文件中的内容 1.fs.readFile()的语法格式 使用fs.readFile()方法,可以读取指定文件中的内容,语法格式如下: ...
- python怎么读取txt文件内容然后保存到excel-Python实现读取txt文件并转换为excel的方法示例...
本文实例讲述了Python实现读取txt文件并转换为excel的方法.分享给大家供大家参考,具体如下: 这里的txt文件内容格式为: 892天平天国定都在?A开封B南京C北京(B) Python代码如 ...
- python比较excel表格内容并提取_利用python提取多张excel表数据并汇总到同一张新表中...
接上篇文章<如何用python实现excel中的vlookup功能?>,上篇说到,最近我在做一个小项目,也是用python操作excel解决财务审计工作上的一些问题,以便提高工作效率及其准 ...
- python显示中文文件内容_Python实现的json文件读取及中文乱码显示问题解决方法...
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...
- python实现对文本内容的修改_介绍python对文件操作实现全文或单行替换
python修改文件时,使用w模式会将原本的文件清空/覆盖.可以先用读(r)的方式打开,写到内存中,然后再用写(w)的方式打开.替换文本中的taste 为 tastingYesterday when ...
- python后端开发工作内容怎么写_【Python后端开发岗位职责_Python后端开发职责/工作内容】-猎聘岗位职责频道...
python后端开发工程师 深圳市超频三科技股份有限公司 深圳市超频三科技股份有限公司,超频三,超频三科技,超频三 职责: 1.负责集成各种维度的数据源,使用各种数据获取技巧,转换.分析.调度.存储数 ...
- Win10系统可识别移动硬盘的插入,无法读取移动硬盘的内容,硬盘插入win10无法读取
参考:Win10系统无法识别移动硬盘 1. win10通知栏可以识别插入的移动硬盘,但是在我的电脑里不显示移动硬盘. 2. 单击右下角的小三角,鼠标放在那个移动硬盘的图表上,记住此时的硬盘名字,有可能 ...
- python 读取文件读出来是什么格式-深入学习python解析并读取PDF文件内容的方法...
这篇文章主要学习了python解析并读取PDF文件内容的方法,包括对学习库的应用,python2.7和python3.6中python解析PDF文件内容库的更新,包括对pdfminer库的详细解释和应 ...
- python中读取文件内容-深入学习python解析并读取PDF文件内容的方法
这篇文章主要学习了python解析并读取PDF文件内容的方法,包括对学习库的应用,python2.7和python3.6中python解析PDF文件内容库的更新,包括对pdfminer库的详细解释和应 ...
- python读取pdf文件_深入学习python解析并读取PDF文件内容的方法
这篇文章主要学习了python解析并读取PDF文件内容的方法,包括对学习库的应用,python2.7和python3.6中python解析PDF文件内容库的更新,包括对pdfminer库的详细解释和应 ...
最新文章
- Spring Boot 2.6之后,动态权限控制终于可以用起来了!
- 如何从用户体验的角度去做一个网站的页面设计
- NHibernate应用二:第一个NHibernate程序
- poi读取Excel内容数据
- python,pycharm,anaconda,tensorflow安装
- 浏览器为什么会有兼容性问题
- 【最佳解法】剑指 Offer 42. 连续子数组的最大和
- p服务器不响应,无法加载资源:服务器响应状态为500
- html5如何新建定义站点,HTML5技术教程:创建新作品_HTML5教程_创建作品_添加元素_课课家...
- Mysql 连接的使用
- Flink算子(Filter、KeyBy、Reduce和Aggregate)
- 所有C#程序员必须知道的13件事
- 图片缩放与目标值的规范
- Android Volley教程
- c语言在输出字符串时可以用指针,C语言—字符串、指针
- 如何解决大规模高性能存储可靠性问题?
- 触摸屏校准之tslib
- 回车、换行、回车换行、硬回车以及软回车
- 5个最佳开源环境电子邮件客户端
- typora主题-orangeheart
热门文章
- 二元偏导数存在的条件_高等数学入门——高阶偏导数的概念和计算
- python arima模型_时间序列分析 ARIMA模型 Python(2)
- 卷积层和全连接层的区别_1*1的卷积核和全连接层有什么异同?
- bilibili怎么设置弹幕数量_python爬取B站视频弹幕分析并制作词云
- Java函数式折叠,循环,记忆化效率初识
- 机器学习样本标记 示意代码
- docker run Influxdb
- 数据恢复 从binlog文件
- vue 去除路由时候的#
- UNABLE to load uWSGI plugin: ./python_plugin.so: cannot open shared object file: No such file or dir