一. Python中表示时间的两种方式:
时间戳:相对于1970.1.1 00:00:00以秒计算的偏移量,唯一的
时间元组struct_time:共有9个元素> tm_year:年1-12> tm_mon:月1-12> tm_mday:日1-31> tm_hour:时0-23> tm_min:分0-59> tm_sec:秒0-59> tm_wday:星期0-6(0表示周日)> tm_day:一年中的第几天1-366> tm_isdst:是否是夏令,默认为-1
二. time
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | 1. time.time()
2. time.sleep(secs)
3. time.gmtime(secs)
4. time.localtime(secs)
print (time.localtime())
print (time.localtime( 13912345678 ))
5. time.strftime( format , t)
print (time.strftime( '%Y-%m-%d %H:%M:%S' , time.localtime()))
print (time.strftime( '%Y-%m-%d %H:%M:%S' , time.localtime(time.time() + 60 * 60 )))
6. time.strptime(string, format )
print (time.strptime( "2023-1-11 1:2:3" , "%Y-%m-%d %H:%M:%S" ))
print (time.strptime( "2023-1-11" , "%Y-%m-%d" ))
7. time.ctime(secs)
print (time.ctime( 123 ))
print (time.ctime(time.time() + 60 * 60 ))
8. time.mktime(t)
print (time.mktime(time.localtime(time.time())))
print (time.time())
print (time.mktime(time.strptime( '2023-2-3' , '%Y-%m-%d' )))
|
三. datetime
datetime比time高级了不少,可以理解为datetime基于time进行了封装,提供了更多实用的函数,主要包含一下几类:
timedelta:主要用于计算时间跨度
time:只关注时间
date:只关注日期
datetime:同时有时间和日期
在实际使用中,用得比较多的是datetime.datetime和datetime.timedelta,另外两个datetime.date和datetime.time实际使用和datetime.datetime并无太大差别。
1.datetime.datetime
datetime.datetime 实例化后主要会有以下属性及常用方法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | time_now = datatime.datetime.now()
datetime.year
datetime.month
datetime.day
datetime.hour
datetime.minute
datetime.second
datetime.microsecond
datetime.tzinfo():时区
datetime.date():返回date对象
datetime.time():返回time对象
datetime.replace(name = value)
datetime.timetuple():返回time.struct_time 对象
datetime.strftime( format ):按照 format 进行格式化输出
datetime.strptime(date_string, format ): 给定时间格式解析字符串
datetime.now([tz]):当前时间默认 localtime
datetime.today():当前时间
|
2.datetime.timedelta
date.timedelta(3) ,前进3天
date.timedelta(-3) ,后退3天
date.timedelta(hour = 3) ,前进3小时
date.timedelta(minutes = 3) ,前进3分钟
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 31 32 33 34 35 | import time
import datetime
dt = datetime.datetime.now()
print (dt.timestamp())
print (dt.year)
print (dt.month)
print (dt.day)
print (dt.hour)
print (dt.minute)
print (dt.second)
print (dt.microsecond)
print (dt.tzinfo)
print (dt.time())
print (dt.date())
print (dt.strftime( "%Y-%m-%d %H:%M:%S" ))
print (datetime.datetime.strptime( '2023-1-20 1:1:1' , "%Y-%m-%d %H:%M:%S" ))
delta = datetime.timedelta( 11 )
print (dt + delta)
print ((dt + delta).strftime( "%Y-%m-%d %H:%M:%S" ))
print ((dt - delta).strftime( "%Y-%m-%d %H:%M:%S" ))
print ( '....' )
print (datetime.datetime.now())
print (datetime.date.fromtimestamp(time.time()) )
print (datetime.datetime.now())
print (datetime.datetime.now() + datetime.timedelta( 3 ))
print (datetime.datetime.now() + datetime.timedelta( - 3 ))
print (datetime.datetime.now() + datetime.timedelta(hours = 3 ))
print (datetime.datetime.now() + datetime.timedelta(minutes = 30 ))
print (datetime.date.fromtimestamp(time.time()))
|
以上就是python中time和datetime的区别及用法是什么的详细内容
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。