日期和时间主要有两个库,datetime和time.
datetime:
日期:datetime.date.today()
日期和时间:datetime.datetime.now()
1000天之后:datetime.datetimedelta(days=1000)
打印格式的问题:isoformat(),strftime()
字符串转换:strptime()
time:
datetime.time(12,11,30)
time.time() 实际时间
time.clock() CPU时间
time.sleep() 休眠
各种不解释,直接代码中实践。
导入模块:
>>> import datetime
date获取今天日期:
>>> a=datetime.date.today()
>>> a
datetime.date(2015, 10, 20)
>>> a.day
20
>>> a.year
2015
>>> a.month
10
datetime获取今天日期:
>>> b=datetime.datetime.now()
>>> b
datetime.datetime(2015, 10, 20, 15, 54, 34, 345931)
1000天以后是什么时间:
timedelta是一个特殊类型的对象,它包含了一些天数,如果有必要的话,还会有一些秒数。我们可以使用其来增加或减少日期。
>>> a=datetime.date.today()
>>> d=datetime.timedelta(days=1000)
>>> (a+d).isoformat()
'2018-07-16'
显示更好看点:
>>> (a+d).strftime('%m/%d/%Y')
'07/16/2018'
1000个小时后是什么时间
>>> e=datetime.timedelta(hours=1000)
>>> b=datetime.datetime.now()
>>> (e+b).isoformat()
'2015-12-01T08:15:20.952474'
距离去年开学多少天了
>>> sad_day=datetime.datetime.strptime('2014-09-15','%Y-%m-%d')
>>> b=datetime.datetime.now()
>>> print b-sad_day
400 days, 16:23:09.111938
看看时光倒流了没
>>> sad_day>b
False
提前设置个下班时间:
>>> print datetime.time(12,11,30)
12:11:30
测试两段程序哪个运行速度快
import time
a=input("please input 0 or 1:")
start_time = time.time()
start_clock = time.clock()
if a:
sum_i=0
for i in range(100000):
sum_i+=i
else:
sum_i=sum(range(100000))
print sum_i
time.sleep(2)
end_time = time.time()
end_clock = time.clock()
print "time-delta:"
print start_time-end_time
print "clock-delta:"
print start_clock-end_clock
运行结果:
[root@lxd python]# python date.py
please input 0 or 1:0
4999950000
time-delta:
-2.0064599514
clock-delta:
-0.01
[root@lxd python]# python date.py
please input 0 or 1:1
4999950000
time-delta:
-2.02046704292
clock-delta:
-0.01
time.time() 程序运行的实际时间
time.clock() cpu时间
time.sleep() 以秒为单位的休眠时间