用了一段时间的django开发web项目,也是第一次用python来开发项目,所有有许多相关的知识点需要总结,本文所介绍的python的日期时间处理就是最近用到的,希望对各位有所帮助,也同时作为自己的笔记储存。

Python 提供了time、 calendar、datetime 等模块用于处理日期和时间,较为常用的还是datetime模块。

时间间隔是以秒为单位的浮点小数。

每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示。

python中时间日期格式化符号:

%y 两位数的年份表示(00-99)

%Y 四位数的年份表示(000-9999)

%m 月份(01-12)

%d 月内中的一天(0-31)

%H 24小时制小时数(0-23)

%I 12小时制小时数(01-12)

%M 分钟数(00=59)

%S 秒(00-59)

%a 本地简化星期名称

%A 本地完整星期名称

%b 本地简化的月份名称

%B 本地完整的月份名称

%c 本地相应的日期表示和时间表示

%j 年内的一天(001-366)

%p 本地A.M.或P.M.的等价符

%U 一年中的星期数(00-53)星期天为星期的开始

%w 星期(0-6),星期天为星期的开始

%W 一年中的星期数(00-53)星期一为星期的开始

%x 本地相应的日期表示

%X 本地相应的时间表示

%Z 当前时区的名称

%% %号本身

calendar

获取年历

# 返回一个多行字符串格式的year年年历,3个月一行,间隔距离为c

calendar.calendar(2017)

获取日历

# 获取2017年11月日历

>>> print calendar.month(2017, 11)

November 2017

Mo Tu We Th Fr Sa Su

1 2 3 4 5

6 7 8 9 10 11 12

13 14 15 16 17 18 19

20 21 22 23 24 25 26

27 28 29 30

获取一周一行的月日历

# 获取2017年11月周日历集合

>>> print calendar.monthcalendar(2017,11)

[[0, 0, 1, 2, 3, 4, 5], [6, 7, 8, 9, 10, 11, 12], [13, 14, 15, 16, 17, 18, 19], [20, 21, 22, 23, 24, 25, 26], [27, 28, 29, 30, 0, 0, 0]]

获取日期为星期几

# 获取2017年11月11日是星期几(0-6代表星期一到星期日)

>>> print calendar.weekday(2017,11,11)

5

datetime

获取当前日期时间

# 获取当前时间(datetime类型)

>>> print datetime.datetime.now()

2017-11-11 17:21:56.076882

# 获取当前日期

>>> print datetime.datetime.now().date()

2017-11-11

>>> print datetime.date.today()

2017-11-11

# 获取当前时间的字符串

>>> print datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")

'2017-11-11 17:21:56'

获取当前日期的后几天/前几天

# 获取明天

>>> print datetime.date.today() + datetime.timedelta(days=1)

2017-11-12

>>> print datetime.date.today() + datetime.timedelta(1)

2017-11-12

# 获取昨天

>>> print datetime.date.today() - datetime.timedelta(days=1)

2017-11-10

>>> print datetime.date.today() - datetime.timedelta(1)

2017-11-10

获取本周/本月最后一天及第一天

>>> today = datetime.date.today()

# 获取本周第一天

>>> print today - datetime.timedelta(today.weekday())

2017-11-06

# 获取本周最后一天

>>> print today + datetime.timedelta(6-today.weekday())

2017-11-12

# 获取本月第一天

>>> print datetime.date(today.year, today.month, 1)

2017-11-01

# 获取本月最后一天

>>> first_day_weekday, last_day_num = calendar.monthrange(today.year, today.month)

>>> print datetime.date(today.year, today.month, last_day_num)

2017-11-30

获取当天最小时间/最大时间

# 获取当天最小时间

>>> print datetime.datetime.combine(datetime.date.today(), datetime.time.min)

2017-11-11 00:00:00

# 获取当天最大时间

>>> print datetime.datetime.combine(datetime.date.today(), datetime.time.max)

2017-11-11 23:59:59.999999

time

获取当前时间戳

>>> print time.time()

1510396655.7

获取本地时间

>>> print time.localtime(time.time())

time.struct_time(tm_year=2017, tm_mon=11, tm_mday=11, tm_hour=18, tm_min=13, tm_sec=57, tm_wday=5, tm_yday=315, tm_isdst=0)

获取格式化时间

# 格式化成%Y-%m-%d %H:%M:%S形式

>>> print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

2017-11-11 18:58:39

# 格式化成%a %b %d %H:%M:%S %Y形式

>>> print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())

Mon Nov 11 18:58:40 2017

# 将格式字符串转换为时间戳

>>> format_time = time.strptime("2017-11-11 18:58:39", "%Y-%m-%d %H:%M:%S")

>>> print time.mktime(format_time)

1510396712.0

各个时间格式之间的转换

datetime <=> date

# datetime=> date

>>> print datetime.datetime.now().date()

2017-11-11

# date => datetime

>>> today = datetime.date.today()

>>> print datetime.datetime.combine(today, datetime.time.min)

2017-11-11 00:00:00

datetime <=> timestamp

# datetime => timestamp

>>> print time.mktime(datetime.datetime.now().timetuple())

1510396755.0

# timestamp => datetime

>>> print datetime.datetime.fromtimestamp(1510396755.0)

2017-11-11 18:39:15

datetime <=> string

# datetime => string

>>> print datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")

2017-11-11 18:39:15

# string => datetime

>>> print datetime.datetime.strptime("2017-11-11 18:39:15", "%Y-%m-%d %H:%M:%S")

2017-11-11 18:39:15

datetime <=> timetuple

# datetime => timetuple

>>> print datetime.datetime.now().timetuple()

time.struct_time(tm_year=2017, tm_mon=11, tm_mday=11, tm_hour=18, tm_min=50, tm_sec=57, tm_wday=5, tm_yday=315, tm_isdst=0)

# timetuple => datetime

>>> time_tuple = datetime.datetime.now().timetuple()

>>> print datetime.datetime.fromtimestamp(time.mktime(time_tuple))

2017-11-11 18:50:35

python显示时间_python日期时间处理总结相关推荐

  1. python日期时间_Python日期时间

    python日期时间 Python日期时间 (Python datetime) In this post, we will study about how to use the python date ...

  2. html英文日期js,JS网页上显示中英文版日期时间(根据电脑上的时间)

    JS网页上显示中英文版日期时间(根据电脑上的时间) <script language="javascript"> function shownowtime() { va ...

  3. Python将字符串转换为日期时间

    In this tutorial, we'll see how to convert string to datetime in python. 在本教程中,我们将看到如何在python中将字符串转换 ...

  4. Python处理ISO 8601日期时间

    文章目录 一.ISO 8601日期时间 1. 简介 2. 格式 3. 时区划分 二.Python处理ISO 8601日期时间 1. 将 ISO 8601 转化为 UTC 标准日期时间 / 本地时间 2 ...

  5. Python3 日期时间 相关模块(time(时间) / datatime(日期时间) / calendar(日历))

    Python3 日期时间 相关模块(time(时间) / datatime(日期时间) / calendar(日历)) 本文由 Luzhuo 编写,转发请保留该信息. 原文: http://blog. ...

  6. vivo怎么调时间_手表怎么调时间?日期时间怎么调,电子手表

    今天讲讲手表怎么调时间?日期时间怎么调,电子手表 机械表怎么调整时间和日期 中间的把头是螺丝冒一样拧的,按专柜防水设计的,调节时间的时候逆时针向下拧,像拧茶杯盖一样拧松开.拧松开后,是0档位直接向上拧 ...

  7. python获取系统时间为字符串_Python日期时间对象转换为字符串的实例

    1.标准转换格式符号说明 %a 本地星期的短名称 如:Sun, Mon, ..., Sat (en_US); So, Mo, ..., Sa (de_DE) %A 本地星期全名称 如 :Sunday, ...

  8. python日期和时间_Python日期和时间

    datetime是Python处理日期和时间的标准库. 获取当前日期和时间 我们先看如何获取当前日期和时间: 1 2 3 4 5 6>>>from datetime import d ...

  9. python按年月日输出字符串_python日期时间转为字符串或者格式化输出的实例

    python日期时间转为字符串或者格式化输出的实例 如下所示: 年月日时分秒 >>> print datetime.datetime.now().strftime("%Y- ...

最新文章

  1. 2020年华科计算机考研机试题答案(没弄懂题目的意思)
  2. 【简便代码】1082 射击比赛 (20分)_17行代码AC
  3. win32mysql数据库回复_windows mysql 数据库备份与还原方法
  4. 【Pytorch神经网络理论篇】 16 过拟合问题的优化技巧(三):批量归一化
  5. android sdk 环境签名,gradle打包APK,并使用jarsigner签名
  6. 在请求目标中找到无效字符。有效字符在RFC 7230和RFC 3986中定义
  7. Android sdk下载安装配置教程
  8. for能否作为matlab的变量名,matlab中for语句用法
  9. Android流程图
  10. 网页设计大作业成品_成品衣柜尺寸太固定,设计师6大方面分享定制衣柜,读后收获满满...
  11. ExoPlayer网速估计方法
  12. 电路功能描述方式——数据流方式
  13. Java游戏开发之一
  14. linux学习之linux百问,不断更新
  15. Matlab基础学习(中)
  16. 浅谈Wi-Fi渗透--原理篇
  17. ceph修复osd为down的情况
  18. django+pyecharts制作工单系统实时刷新可视化仪表盘并设置报表定时发送
  19. scrapy爬取苏宁所有图书
  20. 基于asp.net网上论坛BBS毕业设计

热门文章

  1. python中join和split使用
  2. axios重新调用失败的ajax_Vue之axios实现ajax数据请求
  3. ## CSP认证 201809-1 卖菜(C语言)(100分)
  4. 用于Ubuntu 16.04和18.04的TensorFlow,Keras,Caffe,Caffe,CUDA,cuDNN和NVIDIA驱动程序的单行安装
  5. 如何在Ubuntu-16.04 / 18.04上为 RTX 2080 Ti GPU 安装Nvidia驱动和cuda-10.0
  6. R语言使用merge函数合并数据,如何保持原始数据顺序
  7. 2018阿里文学春招面试题
  8. c/c++教程 - 总集1. c基础语法
  9. LeetCode For SQL 184. 部门工资最高的员工 (分组 from嵌套)
  10. 面试—每日一题(2)