python常用的处理时间的库有:datetime,time,calendar。datetime库包括了date(储存日期:(年、月、日),time(储存时间:(小时、分、秒和微秒),timedelta代表两个datetime之间的差(天、秒、微秒)。

一、datetime处理日期

  • datetime.now():当前时间
  • datetime.timedelta():计算相差天数和秒数
  • datetime():创建datetime格式

1. datetime.now()

from datetime import datetime
now=datetime.now()
print(f'当前时间:{now}')
print(f'{now.year}年{now.month}月{now.day}日')

2. datetime.timedelta()

timedelta计算相差天数和秒数

from datetime import timedelta
delta = timedelta(days=1,seconds=1300)
delta_seconds = delta.total_seconds()
print(delta_seconds/3600)
print(delta_seconds)

from datetime import timedelta
start=datetime(2019,4,1)
#计算50天后是哪一天
start+timedelta(50)

3. datetime( )

(1)创建datetime格式

datetime(%Y,%m,%d,%H,%M,%S)

datetime共有6个参数,分别代表的是年月日时分秒。其中年月日是必须要传入的参数,时分秒可以不传入,默认全为零。

二、时间格式处理及转换

1. str.strftime('格式')

(1)datetime格式转换成字符串

stamp = datetime(2019,4,6)

  datetime.strptime只能根据设定的时间格式来处理指定的字符串,如果列表里(list)包含不止一种格式的字符串,如datestr=['12/20/2018','12/11/2018','2018-10-18'],使用datetime.strptime就很难处理了。这时候,可以使用第三方dateutil包的parser.parse方法。这个包能够解析大部分人类可理解的日期表示。

(2)parser.parse

日期出现在月份之前,可以通过传递dayfirst=True来表明

from dateutil.parser import parse
datestr=['12/20/2018','20180210','2019-01-10']
#转换成datetime格式
new_d=[parse(d) for d in datestr]
#统一为12/20/2018格式
d1=[d.strftime('%m/%d/%Y') for d in new_d]
d2=[d.strftime('%Y%m%d') for d in new_d]
d3=[d.strftime('%Y-%m-%d') for d in new_d]
d4=[d.strftime('%y-%m-%d') for d in new_d]
print(f'datetime格式:\n{new_d}')
print(f'"月/日/年"格式:\n {d1}')
print(f'"年月日"格式:\n{d2}')
print(f'"年-月-日格式":\n{d3}')
print(f'"年(后两位)-月-日"格式:\n{d4}')

datetime模块处理时间的更多相关文章

  1. python的datetime模块处理时间

    python的datetime模块主要用来处理时间,里面包含很多类,包括timedelay,date,time,datetime等 开发中经常会用到模块里面的datetime类,这是一个表示日期时间的 ...

  2. Python处理时间 time && datetime 模块

    Python处理时间 time  &&  datetime 模块 个人整理,获取时间方式: import datetime import time #获取当前时间:Thu Nov 03 ...

  3. python处理时间--- datetime模块

    1   Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块我在之前的文章已经有所介绍,它提供的接口与C标准库time.h基本一致.相比于tim ...

  4. python中datetime模块

    Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块我在之前的文章已经有所介绍,它提供 的接口与C标准库time.h基本一致.相比于time模块 ...

  5. python datetime模块参数详解

    Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块,它提供 的接口与C标准库time.h基本一致.相比于time模块,datetime模块的接 ...

  6. python time模块和datetime模块详解

    一.time模块 time模块中时间表现的格式主要有三种: a.timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量 b.struct_time时间元组,共 ...

  7. python-Day5-深入正则表达式--冒泡排序-时间复杂度 --常用模块学习:自定义模块--random模块:随机验证码--time & datetime模块

    正则表达式   语法:             mport re #导入模块名 p = re.compile("^[0-9]") #生成要匹配的正则对象 , ^代表从开头匹配,[0 ...

  8. python datetime模块strptime/strptime format常见格式命令_施罗德_新浪博客

    python datetime模块strptime/strptime format常见格式命令_施罗德_新浪博客     python datetime模块strptime/strptime form ...

  9. Python datetime模块的datetime类

    datetime模块定义了下面这几个类: datetime.date:表示日期的类.常用的属性有year, month, day. datetime.time:表示时间的类.常用的属性有hour, m ...

随机推荐

  1. git 切换远程仓库,以及碰到的一个问题。

    git 切换远程仓库出现如下问题: $ git checkout -b localdev origin/dev fatal: Cannot update paths and switch to bra ...

  2. React-Native采坑总结

    1.zIndex 在Android上使用zIndex来控制组件的层级,会遇到元素不显示的问题. 解决方案: 尽量改变组件的顺序,而不用zIndex 尽量不要使用zIndex来控制组件的层级,默认情况下 ...

  3. RedisHelper帮助类

    using Newtonsoft.Json; using RedLockNet.SERedis; using RedLockNet.SERedis.Configuration; using Stack ...

  4. BZOJ3257 [Zjoi2014]力 多项式 FFT

    原文链接http://www.cnblogs.com/zhouzhendong/p/8762639.html 题目传送门 - BZOJ3527 题意 给出长度为$m$的序列$q_{1..m}$,让你输 ...

  5. twig模板基本学习

    twig基本语法 1.输出 {{    }} 2.判断 {%    %} 3.注释 {#      #} 具体使用时参考https://twig.symfony.com/doc/2.x/官网文档进行查 ...

  6. JS对象与原型链

    每个函数都存在一个prototype的属性,然后这个属性值为一个对象,我们称之为原型对象 每个对象都存在着一个隐藏的属性"__proto__" 这个属性引用了创建这个对象的函数的p ...

  7. angular笔记_10

    过滤器 currency:1:2:3                     与货币相关 第一个参数是符号 第二个参数是保留小数点几位 number:1                         ...

  8. 修改input和textarea的placeholder的颜色,限制文本框字数输入

    <style type="text/css"> textarea{ width: 400px; height:400px; resize: none; } .limit ...

  9. 转摘: MySQL详解--锁

    原文 http://blog.csdn.net/xifeijian/article/details/20313977 InnoDB锁问题 InnoDB与MyISAM的最大不同有两点:一是支持事务(TR ...

  10. HTML5_canvas_图片加载_双缓冲_跳帧闪烁问题

    canvas 图片加载 pen.drawImage(ele, showX, showY, imgWidth, imgHeight); ele    将 img 元素 加载到画布上 步骤 1. 创建一个 ...