python时间处理方法_Python基础(14)-时间处理

1.datatime模块介绍

datetime是python的内置模块,用来处理日期和时间。datetime对象是 date 与 time 的结合体,涵盖了date和time对象

的所有信息。

该模块常用的类有:

类名功能说明

date

日期对象

time

时间对象

datetime

日期时间对象

timedelta

时间间隔

tzinfo

时区信息对象

2.构造datatime对象

from datetime import datetime

datetime(year,month,day,hour=0, minute=0, second=0, microsecond=0, tzinfo=None)

参数范围:

MINYEAR <= year <= MAXYEAR

1 <= month <= 12

1 <= day <= 指定年月的天数

0 <= hour < 24

0 <= minute < 60

0 <= second < 60

0 <= microsecond < 1000000

3.datatime类方法

datetime.today()

返回本地区当前日期时间datetime对象

datetime.today()

# 输出 : datetime.datetime(2019, 12, 9, 13, 27, 54, 693978)

datetime.now(tz=None)

返回本地区当前日期时间datetime对象,可以添加时区tz 默认无时区时,返回结果和datetime.today()一致

datetime.now()

# 输出 : datetime.datetime(2019, 12, 9, 13, 27, 54, 693978)

datetime.fromtimestamp(timestamp, tz=None)

返回给定时间戳的datetime对象,时区默认为空,返回当地日期时间,也可以指定时区

datetime.fromtimestamp(1575877756)

# 输出 : datetime.datetime(2019, 12, 9, 15, 49, 16)

附注:想获取当前时间戳,可通过time模块的time方法实现

datetime.combine(date, time, tzinfo=self.tzinfo)

拼接date和time对象,形成一个新的datetime对象 可以输入时区参数,否则默认为原time的时区

date_ = datetime.today().date()

time_ = datetime.today().time()

datetime.combine(date_,time_)

# 输出 : datetime.datetime(2019, 12, 9, 16, 12, 56, 914484)

datetime.strptime(date_string, format)

将格式化日期时间字符串,转换为datetime对象,可以转换日期、时间、日期时间

datetime.strptime('2019-11-05','%Y-%m-%d')

# 输出 : datetime.datetime(2019, 11, 5, 0, 0)

datetime.strptime('09:30:50','%H:%M:%S')

# 输出 : datetime.datetime(1900, 1, 1, 9, 30, 50)

datetime.strptime('2019-11-05 09:30:50','%Y-%m-%d %H:%M:%S')

# 输出 : datetime.datetime(2019, 11, 5, 9, 30, 50)

4.datatime实例方法

d = datetime(2019,12,6,13,30,50)

d.date()

# 输出 : datetime.date(2019, 12, 6)

d.time()

# 输出 : datetime.time(13, 30, 50)

d.timestamp()

# 输出 : 1575610250.0

d.weekday()

# 输出 : 4

返回星期几,星期一为 0,星期天为 6

d.isoweekday()

# 输出 : 5

返回星期几,星期一为 1,星期天为 7

d.isocalendar()

# 输出 : (2019, 49, 5)

返回数组:(年、第多少周、星期几)

datetime.strftime(date_string, format)

将datetime对象转换为格式化字符串

d = datetime.today()

datetime.strftime(d,'%Y-%m-%d %H:%M:%S')

# 输出 : '2019-12-09 16:32:18'

5.datatime类实例属性

d = datetime(2019,12,6,13,30,50)

d.year

# 输出 : 2019

d.month

# 输出 : 12

d.day

# 输出 : 6

d.hour

# 输出 : 13

d.minute

# 输出 : 30

d.second

# 输出 : 50

d.microsecond

# 输出 : 3000

6.datatime时差计算

1)计算时间差:

#! /usr/bin/env python

#coding=utf-8

import time

import datetime

d1 = datetime.datetime(2011, 2, 8)

d2 = datetime.datetime(2010, 12, 31)

print(d1 - d2).days

2)计算运行时间:

#! /usr/bin/env python

#coding=utf-8

import time

import datetime

starttime = datetime.datetime.now()

time.sleep(5)

endtime = datetime.datetime.now()

print(endtime - starttime).seconds

3)计算十天后日期时间:

#! /usr/bin/env python

#coding=utf-8

import time

import datetime

d1 = datetime.datetime.now()

d3 = d1 + datetime.timedelta(days =10)

print(str(d3))

print(d3.ctime())

7.time模块

1)显示当前日期:

#! /usr/bin/env python

#coding=utf-8

import time

print(time.strftime("%Y-%m-%d %A %X %Z", time.localtime()))


版权声明:本文为weixin_34916118原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。