Python - 各类时间获取汇总

文章目录

不定期更新汇总

获取当前时间「Y-m-d H:i:s格式」

import datetime

now = datetime.datetime.now() # 返回示例:2020-12-22 17:55:14.282811「包含微秒」

now.strftime("%Y-%m-%d %H:%M:%S") # 返回示例:2020-12-22 17:55:14

now.strftime("%Y{}%m{}%d{}%H{}%M{}%S{}").format("年","月","日","时","分","秒") # 返回示例:2020年12月22日17时55分14秒

now.strftime('%W') # 返回示例:53「一年中的星期数」

now.strftime('%m') # 返回示例:12「月数」

获取当前时间「时间戳格式」

import time

time.time()  # 返回示例:1608631330.893169

int(time.time()) # 返回示例:1608631330「10位时间戳」

round(time.time()*1000) # 返回示例:1608631330000「13位时间戳」

获取当前时间「结构化对象格式」

import time

time.localtime()  # 返回示例:time.struct_time(tm_year=2020, tm_mon=12, tm_mday=22, tm_hour=18, tm_min=8, tm_sec=59, tm_wday=1, tm_yday=357, tm_isdst=0)

获取当前时间「所在的星期数」

import datetime

today = datetime.datetime.now()

week = today.weekday() #返回示例:1 「0-6表示周一到周天」

week = today.isoweekday() #返回示例:2 「1-7表示周一到周天」

ret = today.isocalendar() #返回示例:(2020, 52, 2)「年份,第几周,周几」

获取当前时间「本月第几周」

import datetime

now = datetime.datetime.now()
week = int(now.strftime('%W'))
monthBegin = now.replace(day=1, hour=0, minute=0, second=0, microsecond=0)
weekNum = week - int(monthBegin.strftime('%W')) + 1

获取任意时间「Y-m-d H:i:s格式」

import datetime

today = datetime.date.today() #今天 返回示例:2020-12-22

yesterday = today - datetime.timedelta(days=1) #昨天 返回示例:2020-12-21

tomorrow = today - datetime.timedelta(days=-1) #明天 返回示例:2020-12-23

lastWeek = today - datetime.timedelta(weeks=1) #上周 返回示例:2020-12-15

nextWeek = today - datetime.timedelta(weeks=-1) #下周 返回示例:2020-12-29

monday = today - timedelta(days=self.tf.weekday()) #周一 返回示例:2020-12-21

sunday = today + timedelta(days=6 - self.tf.weekday()) #周天 返回示例:2020-12-27

others = today.replace(year=2001,month=1,day=1) #指定的任意时间 返回示例:2001-01-01

获取任意时间「时间戳格式」

import time

stamp = time.mktime(time.strptime('2020-12-01', '%Y-%m-%d')) # 返回示例:1606752000.0

备注:strftime模块支持的参数

%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 当前时区的名称

备注:timedelta模块支持的参数

days 以天为单位

weeks 以周为单位

hours 以小时为单位

minutes 以分钟为单位

seconds 以秒为单位

milliseconds 以毫秒为单位

microseconds 以微秒为单位

备注:replace模块支持的参数

year 以年为单位

month 以月为单位

day 以天为单位

hour 以小时为单位

minute 以分钟为单位

second 以秒为单位

microsecond 以微秒为单位

上一篇:使用Python实现国内疫情数据地图


下一篇:JAVA使用LocalDate获取当前日期所在季度的开始日期和结束日期