经常使用python操作Excel,就会遇到各种坑,比如,有时候你读取到的某一单元格的数据,你预想的结果本来应该是这样的,但是它却是这样的,真是很蛋疼。于是你会找各种解决办法,去解决这个问题!所以鄙人共找到了这么几种方法,仅供参考。

这些方法都会使用到这么一个包:xlrd,一般都是python自带的

导包

import datetime
import xlrd

方法一:自己拼接日期(个人不建议这么做)

def date_as_join(raw_date):
'''
用xlrd模块读取日期格式的单元格
:param raw_date 原始数据,list类型,如:[52234.0, 798798.0]
:return: 日期列表 date_list
'''
date_list = []
for date in raw_date:
new_date = xlrd.xldate_as_tuple(date, 0)
date_str = '-'.join([str(i) for i in new_date[:-3]])
format_date = datetime.datetime.strptime(date_str, '%Y-%m-%d').strftime('%Y-%m-%d')
date_list.append(format_date)
print(date_list)
return date_list date_as_join([3422.0, 8675.0])

方法二:使用 xldate_as_datetime

def date_as_datetime(raw_date):
'''
用xlrd模块读取日期格式的单元格
:param raw_date 原始数据,list类型,如:[52234.0, 798798.0]
:return: 日期列表 date_list
'''
date_list = []
for date in raw_date:
new_date = xlrd.xldate_as_datetime(date, 0).strftime('%m-%d')
date_list.append(new_date)
print(date_list)
return date_list date_as_datetime([3422.0, 867575.0])

方法三:使用 xldate_as_tuple

def date_as_tuple(raw_date):
'''
用xlrd模块读取日期格式的单元格
:param raw_date 原始数据,list类型,如:[52234.0, 798798.0]
:return: 日期列表 date_list
'''
date_list = []
for date in raw_date:
new_date = datetime.datetime(*xlrd.xldate_as_tuple(date, 0)).strftime('%Y-%m-%d')
date_list.append(new_date)
print(date_list)
return date_list date_as_tuple([34242.0, 22342.0])

  

如何利用python的xlrd模块读取日期格式的Excel的更多相关文章

  1. python 利用三方的xlrd模块读取excel文件,处理合并单元格

      目的: python能使用xlrd模块实现对Excel数据的读取,且按照想要的输出形式.  总体思路: (1)要想实现对Excel数据的读取,需要用到第三方应用,直接应用. (2)实际操作时候和我 ...

  2. Python之xlrd模块读取xls文件与报错解决

    安装 pip3 install xlrd 用法 Sheet编号从0开始 rows,colnum编号均从0开始 合并的单元格仅返回第一格内容 Sheets只能被调用一次,可获取所有sheet取idx 无 ...

  3. python读写Excel文件--使用xlrd模块读取,xlwt模块写入

    一.安装xlrd模块和xlwt模块 1. 下载xlrd模块和xlwt模块 到python官网http://pypi.python.org/pypi/xlrd下载模块.下载的文件例如:xlrd-0.9. ...

  4. $ 用python处理Excel文档(1)——用xlrd模块读取xls/xlsx文档

    本文主要介绍xlrd模块读取Excel文档的基本用法,并以一个GDP数据的文档为例来进行操作. 1. 准备工作: 1. 安装xlrd:pip install xlrd 2. 准备数据集:从网上找到的1 ...

  5. python使用xlrd模块读写Excel文件的方法

    本文实例讲述了python使用xlrd模块读写Excel文件的方法.分享给大家供大家参考.具体如下: 一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi ...

  6. xlrd模块-读取Execl表格

    #xlrd模块 读取execl表格 import xlrd Execl = xlrd.open_workbook(r'Z:\Python学习\python26期视频\day76(allure参数.读e ...

  7. 利用python 下paramiko模块无密码登录

    利用python 下paramiko模块无密码登录   上次我个大家介绍了利用paramiko这个模块,可以模拟ssh登陆远程服务器,并且可以返回执行的命令结果,这次给大家介绍下如何利用已经建立的密钥 ...

  8. python中configparser模块读取ini文件

    python中configparser模块读取ini文件 ConfigParser模块在python中用来读取配置文件,配置文件的格式跟windows下的ini配置文件相似,可以包含一个或多个节(se ...

  9. python 利用python的subprocess模块执行外部命令,获取返回值

    有时执行dos命令需要保存返回值 需要导入库subprocess import subprocess p = subprocess.Popen('ping www.baidu.com', shell= ...

  10. c# 用OpenXmL读取.xlsx格式的Excel文件 返回DataTable

    1.须要引用的dll :  DocumentFormat.OpenXml.dll  ---须要安装一下OpenXml再引用 WindowsBase  ---直接在项目里加入引用 2.方法: /// & ...

随机推荐

  1. Excel之VLOOKUP()函数的基本用法

    语法: VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup]) 规则:  注意: 查找的值:内容需要完全一样 查找范围:查找范围的 ...

  2. Angular 依赖注入的错误 NullInjectorError, No provider for XXX

    一.在module的providers区域里,为pipe维护具体的实现类 二.如果不想改动module.ts,可选择直接在组件中注入

  3. js 处理大数相减

    function sub(num1, num2) { if(num1 === num2) return '0' function lt(num1, num2) { if (num1.length &l ...

  4. HCIP-ICT实战进阶05-路由策略与策略路由

    HCIP-ICT实战进阶05-路由策略与策略路由 0 前言 什么是路由策略? 基于报文的目的IP地址进行路由表查找, 之后转发数据; 针对控制平面, 为路由协议和路由表服务, 针对路由信息进行过滤或者 ...

  5. HIVE- set

    SET hive.execution.engine = tez;SET hive.tez.auto.reducer.parallelism = true;SET hive.auto.convert.j ...

  6. Nextcloud报 PHP zip 模块未安装

    wget https://pecl.php.net/get/zip自动下载最新包 tar xf zip-1.20.0.tgz cd zip-1.20.0/ phpize 报错system libzip ...

  7. java8线程池创建并使用

    1.创建@Configurationpublic class ThreadPoolConfig { /** * 创建线程池 */ @Bean(name = "threadPool" ...

  8. 二分查找中mid值的计算方法

    在刷题的时候遇到许多二分查找的题目 发现很多大佬的题解中mid值得计算都是用的:mid = low + (high-low)/ 2; 为什么不用mid = (low+high)/ 2的计算方法呢? i ...

  9. 与IE浏览器相关的问题(一)

    使用<input class="input" type="password" /> 密码框时,会出现密码显示状态的图标, 可以使用以下代码消除, . ...

  10. 【当年笔记】集合之Queue队列

    1)Queue 分类 双端队列:双端队列(Deque)是 Queue 的子类也是 Queue 的补充类,头部和尾部都支持元素插入和获取. 阻塞队列:阻塞队列指的是指添加或删除元素时,如果没有成功,会阻 ...