官方文档

  http://python.usyiyi.cn/translate/python_352/library/datetime.html

代码示例

from datetime import datetime

now = datetime.now()
print("年:%s" % now.year)
print("月:%s" % now.month)
print("日:%s" % now.day)
print("时:%s" % now.hour)
print("分:%s" % now.minute)
print("秒:%s" % now.second)
print("毫秒:%s" % now.microsecond)
print("星期:%s" % now.weekday()) # 星期一到星期日 0-6
print("星期:%s" % now.isoweekday()) # 星期一到星期日 1-7
print("日期:%s" % now.date())
print("时间:%s" % now.time())
print("公里序数:%s" % now.toordinal()) # 00001年1月1日的公里序数是1,00001年1月2日的公里序数是2

1.获取当前的日期与时间

from datetime import datetime

dt = datetime(year=2017, month=6, day=27, hour=16, minute=19, second=52)
print(dt.strftime("%Y-%m-%d %H:%M:%S")) # %Y 以0填充的十进制数字表示的带有世纪的年份 0001, 0002, ..., 2013, 2014, ..., 9998, 9999
# %y 以0填充的十进制数表示的不带世纪的年份 00, 01, ..., 99
# %m 以0填充的十进制数字表示的月份 01, 02, 03..., 12
# %d 以0填充的十进制数字表示的月份中的日期 01, 02, 03..., 31
# %H 以0填充的十进制数字表示的小时(24小时制)00, 01, 02, 03...23
# %I 以0填充的十进制数表示的小时(12小时制)01, 02, ..., 12
# %M 以0填充的十进制数字表示的分钟 00, 01, 02...59
# %S 以0填充的十进制数字表示的秒数 00, 01, 02...59
# %j 以0填充的十进制数字表示的一年中的日期 001,002,...,366
# %% '%'字符的字面值

2.日期时间对象格式化成字符串

  注意: strftime()方法的参数在包含中文时,可能会有错,有两个解决办法,推荐第二种

  

from datetime import datetime
from datetime import timedelta # 1.给一个日期加上指定的时间
today = datetime.today()
print(today + timedelta(days=1)) # +1 天
print(today + timedelta(days=-1)) # -1 天 => today - timedelta(days=1)
print(today + timedelta(hours=1)) # +1 小时
print(today + timedelta(minutes=120)) # +120 分钟 => +2小时
print(today + timedelta(seconds=-10)) # -10 秒
print(today + timedelta(weeks=1)) # +1 星期 # 2.两个日期相减
dt1 = datetime(year=2017, month=6, day=30, hour=13, minute=50)
dt2 = datetime(year=2017, month=6, day=30, hour=16, minute=10)
lag_time = dt2 - dt1
print(lag_time.total_seconds()) # 相差的时间,单位: 秒
print(lag_time.total_seconds()/60) # 相差的时间,单位: 分钟
print(lag_time.total_seconds()/60/60) # 相差的时间,单位: 小时

3.日期与时间的计算

from datetime import datetime

# 使用类方法 datetime.strptime(str, format)
dt = datetime.strptime("2017-6-28 15:56:34", "%Y-%m-%d %H:%M:%S")
print(dt)
print(type(dt)) # 类型: <class 'datetime.datetime'>

4.字符串解析成日期时间对象

Python3-datetime模块-日期与时间的更多相关文章

  1. 5.Python3标准库-日期和时间

    ''' 不同于int,str,float,Python没有包含对应日期和时间的原生类型,不过提供了3个相应的模块,可以采用多种表示来管理日期和时间值 time模块由底层C库提供与时间相关的函数.它包含 ...

  2. python3数字、日期和时间

    1.对数值进行取整 #使用内建的round(value,ndigits)函数来取整,ndigits指定保留的位数,在取整时会取值在偶数上,如1.25取一位会取整1.2,1.26会取整1.3 In [1 ...

  3. datetime库 日期与时间

    datetime是一个关于时间的库,主要包含的类有: date    日期对象,常用的属性有year,month,day time 时间对象,hour,minute,second,毫秒 datetim ...

  4. datetime处理日期和时间

    datetime.now() # 获取当前datetimedatetime.utcnow() datetime(2017, 5, 23, 12, 20) # 用指定日期时间创建datetime 一.将 ...

  5. 分别使用time 和 datetime模块记录当前时间

    工作中经常混淆这两种方法 现记录一下 加深印象 代码如下: >>> import time>>> import datetime>>> ct1 = ...

  6. datetime 模块详解 -- 基本的日期和时间类型

    转自:https://www.cnblogs.com/fclbky/articles/4098204.html datetime 模块提供了各种类用于操作日期和时间,该模块侧重于高效率的格式化输出 在 ...

  7. Datetime 模块求日期差

    Datetime 模块求日期差 导入 datetime 模块/实例化当前时间对象 调用.date() 方法 得到当前年/月/日时间 实例化时间差对象 delta 求当前日期减去时间差 delta 后的 ...

  8. python模块 | 时间处理模块—datetime模块

    在python中,与时间处理相关的模块有 time,datetime,calendar. 时间的两个概念: UTC(世界协调时): 整个地球分为二十四时区,每个时区都有自己的本地时间.格林威治天文时间 ...

  9. python笔记7 logging模块 hashlib模块 异常处理 datetime模块 shutil模块 xml模块(了解)

    logging模块 日志就是记录一些信息,方便查询或者辅助开发 记录文件,显示屏幕 低配日志, 只能写入文件或者屏幕输出 屏幕输出 import logging logging.debug('调试模式 ...

随机推荐

  1. TCP 半连接队列和全连接队列满了会发生什么?又该如何应对?

    前言 网上许多博客针对增大 TCP 半连接队列和全连接队列的方式如下: 增大 TCP 半连接队列的方式是增大 /proc/sys/net/ipv4/tcp_max_syn_backlog: 增大 TC ...

  2. 关于替换“c2a0”十六进制字符的方法

    一.背景:在爬取网络小说生成的文件中,发现有些空格没法替换,使用十六进制编辑器查看,发现这些空格字符的十六进制值是“c2a0”,其来源是网页控制的特殊字符,这是一个叫做Non-breaking spa ...

  3. FreeRTOS-为什么关中断之后切换进程?

    https://mp.weixin.qq.com/s/S5HBH3RTo0B2irr8sGwDdw   一. 基本问题   FreeRTOS会在关键区即taskENTER_CRITICAL()和tas ...

  4. Java实现 LeetCode 790 多米诺和托米诺平铺(递推)

    790. 多米诺和托米诺平铺 有两种形状的瓷砖:一种是 2x1 的多米诺形,另一种是形如 "L" 的托米诺形.两种形状都可以旋转. XX <- 多米诺 XX <- &q ...

  5. Java实现 LeetCode 735 行星碰撞(栈)

    735. 行星碰撞 给定一个整数数组 asteroids,表示在同一行的行星. 对于数组中的每一个元素,其绝对值表示行星的大小,正负表示行星的移动方向(正表示向右移动,负表示向左移动).每一颗行星以相 ...

  6. Java实现蓝桥杯历届试题买不到的数目

    历届试题 买不到的数目 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 问题描述 小明开了一家糖果店.他别出心裁:把水果糖包成4颗一包和7颗一包的两种.糖果不能拆包卖. 小朋友 ...

  7. Java实现 LeetCode 349 两个数组的交集

    349. 两个数组的交集 给定两个数组,编写一个函数来计算它们的交集. 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2] 示例 2: 输入: num ...

  8. Java实现 蓝桥杯VIP 算法提高 色盲的民主

    算法提高 色盲的民主 时间限制:1.0s 内存限制:256.0MB  色盲的民主 问题描述 n个色盲聚在一起,讨论一块布的颜色.尽管都是色盲,却盲得各不相同.每个人都有自己的主张,争论不休.最终,他 ...

  9. Java实现 LeetCode 48 旋转图像

    48. 旋转图像 给定一个 n × n 的二维矩阵表示一个图像. 将图像顺时针旋转 90 度. 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵.请不要使用另一个矩阵来旋转图像. 示 ...

  10. Java实现中值问题

    中值问题是求一个n个数列表中某一数组下标k,它要求该下标元素比列表中的一半元素大,又比另一半元素小,这个中间的值被称为中值. 使用Lomuto划分算法思想,此处引用<算法设计与分析基础>第 ...