python数据可视化_python中datetime用法

python数据可视化_python中datetime用法xiao.77如何通过Python写入date数据了?写入还是很简单的。importxlwt3importdatetimeasdtworkbook=xlwt.Workbook()worksheet=workbook.add_sheet(‘sheet1’)worksheet.write(0,0,dt.date.today())workbook.save(‘test.xls’)查…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

xiao.77

如何通过Python写入date数据了?

写入还是很简单的。

import xlwt3

import  datetime as dt

workbook = xlwt.Workbook()

worksheet = workbook.add_sheet(‘sheet1’)

worksheet.write(0, 0, dt.date.today())

workbook.save(‘test.xls’)

查看一下,确实写入了,但变成了一个数字。怎么回事了,原来excel保存日期采用的是float类型保存。

查看worksheet.write:

Help on method write in module xlwt3.worksheet:

write(self, r, c, label=b”, style=) method of xlwt3

.worksheet.Worksheet instance

太简单了,label是什么?

只能查看源码了:

def write(self, r, c, label=b””, style=style.default_style):

self.row(r).write(c, label, style)

继续挖掘:

def write(self, col, label, style=style.default_style):

self.__adjust_height(style)

self.__adjust_bound_col_idx(col)

style_index = self.__parent_wb.add_style(style)

if isinstance(label, str):

if len(label) > 0:

self.insert_cell(col,

StrCell(self.__idx, col, style_index, self.__parent_wb.add_str(label))

)

else:

self.insert_cell(col, BlankCell(self.__idx, col, style_index))

elif isinstance(label, bool): # bool is subclass of int; test bool first

self.insert_cell(col, BooleanCell(self.__idx, col, style_index, label))

elif isinstance(label, (float, int, Decimal)):

self.insert_cell(col, NumberCell(self.__idx, col, style_index, label))

elif isinstance(label, (dt.datetime, dt.date, dt.time)):

date_number = self.__excel_date_dt(label)

self.insert_cell(col, NumberCell(self.__idx, col, style_index, date_number))

elif label is None:

self.insert_cell(col, BlankCell(self.__idx, col, style_index))

elif isinstance(label, formula.Formula):

self.__parent_wb.add_sheet_reference(label)

self.insert_cell(col, FormulaCell(self.__idx, col, style_index, label))

else:

raise Exception(“unexpected data type %r” % type(label))

原来:

elif isinstance(label, (dt.datetime, dt.date, dt.time)):

date_number = self.__excel_date_dt(label)

self.insert_cell(col, NumberCell(self.__idx, col, style_index, date_number))

label的数值,会先进行判断,然后进行处理。

这样,只需要设置一下style就可以了!

dateFormat = xlwt.XFStyle()

dateFormat.num_format_str = ‘yyyy/mm/dd’

worksheet.write(0, 0, dt.date.today(),dateFormat)

workbook.save(‘test.xls’)

搞定。

注意一下:

python的date 和excel的date是不一样的。

实验一下:

dt.date.today().toordinal()##2015/6/19

735768

读取一下excel的数值了?

import xlrd

worksheetRead = xlrd.open_workbook(‘test.xls’)

sheetRead=Rd.sheet_by_index(0)

sheetRead.cell(0,0).value

42174

差别真不小!!

WHY?

原来:python是从公元1年1月1日开始的天数转换 的!

excel是从1899年12月 31号开始的。

做一个函数转换一下即可:

__s_date = dt.date (1899, 12, 31).toordinal() – 1

def getdate(date ):

if isinstance(date , float ):

date = int(date )

d = dt.date .fromordinal(__s_date + date )

return d

ok,over!!

文章最后发布于: 2015-06-19 17:03:45

相关阅读

本文主要介绍C++中的string类的常见用法。

1. 概述

string是C++标准库的一个重要的部分,主要用于字符串处理。可以使用输入输出流

近期很多博友找我咨询问题,我将更新的代码写在最后,由于精力有限只更新单线程版

首先声明,本博文为我原创,但是我在看了 崔庆才 博主

在本次学习中主要爬取的内容如下就简单粗暴直接献上代码吧import requests

import time

import json

from bs4 import BeautifulS

我们经常会面临要从数据库里判断时间,取出特定日期的查询。但是数据库里储存的都是unix时间戳,处理起来并不是特别友好。幸而MYSQL

节能行业中科宇杰在留学生招聘会上成了“香饽饽”记者从2019留学归国人员专场招聘会现场了,看见排起长龙关注国内知名节

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/185164.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 优先级队列(Priority Queue)「建议收藏」

    优先级队列(Priority Queue)「建议收藏」优先级队列(PriorityQueue)注:队列是一种特征为FIFO的数据结构,每次从队列中取出的是最早加入队列中的元素。但是,许多应用需要另一种队列,每次从队列中取出的应是具有最高优先权的元素,这种队列就是优先级队列(PriorityQueue),也称为优先权队列。1.优先级队列的概念1.1优先级队列的定义优先级队列是不同于先进先出队列的另一种队列。每次从队列中取出的是具有最高优先权的元素。

    2022年4月19日
    61
  • shell if条件判断_shell if 判断

    shell if条件判断_shell if 判断,

    2022年8月18日
    7
  • BCG库的一个bug[通俗易懂]

    BCG库的一个bug[通俗易懂]作者:朱金灿来源:http://blog.csdn.net/clever101            同事在使用BCG库图表组件(BCG库的版本为BCGCBPRO1510)时遇到一个问题,就是图表标题总是出现乱码,具体如下图:我查看了一下BCG库的源码,发现BCG库的绘制接口是采用D2D的接口。D2D是微软推出的一个二维绘制的com组件,只支持unicode字符,非unicode字符需要转换

    2022年10月8日
    1
  • linux下的C语言开发

    在很多人的眼里,C语言和linux常常是分不开的。这其中的原因很多,其中最重要的一部分我认为是linux本身就是C语言的杰出作品。当然,linux操作系统本身对C语言的支持也是相当到位的。作为一个真正

    2021年12月27日
    51
  • myeclipse免费版下载_Myeclipse

    myeclipse免费版下载_Myeclipse
     占奇发布于:2011年03月21日(40评)

    MyEclipse9.0经过M1,M2,终于出了正式版(MyEclipseForSpring还是8.6.1)。该版本集成了Eclipse3.6.1,支持HTML5和JavaEE6
    标准版各平台下载地址:官网支持功能自定义下载安装
     
    MyEclipse9.0forWindows下载
    MyEclipse9.0(Wind

    2022年9月26日
    1
  • ResNet 18 网络结构「建议收藏」

    ResNet 18 网络结构「建议收藏」importtorchfromtorchvisionimportmodelsresnet=models.resnet18(pretrained=True)print(resnet)”””ResNet((conv1):Conv2d(3,64,kernel_size=(7,7),stride=(2,2),padding=(3,3),bias=False…

    2022年5月9日
    383

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号