Python 获取并输出当前日期、时间

在python中,可以使用datetime来处理时间和日期,使用是要现导入datetime库

>>> import datetime

1.获得当前日期不显示时间

>>> print(datetime.date.today())
2019-03-28

2.使用today和now获取当前日期和时间,时间精确到毫秒级

>>> print(datetime.datetime.today())
2019-03-28 20:34:05.079049
>>> print(datetime.datetime.now())
2019-03-28 20:34:11.377443

3.使用strftime()格式化时间为标准格式,strftime()可以将日期输出为我们想要的格式(要特别注意参数区分大小写

如只输出日期:

>>> print(datetime.datetime.now().strftime('%Y-%m-%d'))
2019-03-28

若输出当前日期和时间:

>>> print(datetime.datetime.now().strftime('%Y-%m-%d  %H:%M:%S'))
2019-03-28  20:41:11

若在输出日期和时间的同时还要输出星期几:%a 输出星期的简写,%A输出星期的全写

>>> print(datetime.datetime.now().strftime('%Y-%m-%d  %H:%M:%S  %A'))
2019-03-28  20:43:06  Thursday
>>> print(datetime.datetime.now().strftime('%Y-%m-%d %a'))
2019-03-28 Thu

输出月份:%b 简写,%B 全写

>>> print(datetime.datetime.now().strftime('%Y-%m-%d %a %B'))
2019-03-28 Thu March

4.计算倒计时:实现倒计时的方法有很多。其中一种:首先设置一个未来的时间,通过strptime对象设置未来的时间,设置的时间包括年、月、日、时、分、秒。

如:计算从现在到2020年3月31号又多少天:

import datetime
future=datetime.datetime.strptime("2020-3-31 0:0:0","%Y-%m-%d %H:%M:%S")  #使用strptime设置一个未来的时间
now=datetime.datetime.now()                   #获取当前时间
delta=future-now                              #获取两时间之间的差值,(days,seconds,microseconds)
days=delta.days                               #获取倒计时的天数
hours=int(delta.seconds/60/60)                #获取倒计时的小时数
minutes=int((delta.seconds-hours*60*60)/60)   #获取倒计时的分钟数
secondes=delta.seconds-hours*60*60-minutes*60 #获取倒计时的秒数
print("当前时间:",now.strftime("%Y-%m-%d %H:%M:%S"),"距离未来时间:",future.strftime("%Y-%m-%d %H:%M:%S"))
print("还有:",days,"天,",hours,"时",minutes,"分",secondes,"秒")


#运行结果
当前时间: 2019-03-28 21:25:33 距离未来时间: 2020-03-31 00:00:00
还有: 368 天, 2 时 34 分 26 秒

5.计算过去或未来的日期:可以使用datetime模块的timedelta对象结合具体的时间对象来实现,timedelta对象可以格式化天、小时、分钟。

import datetime
now=datetime.datetime.now()
print("现在的时间:",now.strftime("%Y-%m-%d %H:%M:%S"))
futureDays1=now+datetime.timedelta(days=5)     #五天后的时间)
print("五天后的时间:",futureDays1.strftime("%Y-%m-%d %H:%M:%S"))
OldDays2=now-datetime.timedelta(days=3)     #三天前的时间
print("三天前的时间:",OldDays2.strftime("%Y-%m-%d %H:%M:%S"))
futureHours=now+datetime.timedelta(hours=11)   #11小时后的时间
print("11小时后的时间:",futureHours.strftime("%Y-%m-%d %H:%M:%S"))
futureMinutes=now-datetime.timedelta(minutes=2999) #2999分钟前的时间
print("2999分钟前的时间:",futureMinutes.strftime("%Y-%m-%d %H:%M:%S"))

#运行结果
现在的时间: 2019-03-28 22:14:34
五天后的时间: 2019-04-02 22:14:34
三天前的时间: 2019-03-25 22:14:34
11小时后的时间: 2019-03-29 09:14:34
2999分钟前的时间: 2019-03-26 20:15:34

 

你可能感兴趣的:(python)