目录
1.时间获取&计算
2.多种时间格式相互转换
1.时间获取&计算
# 获取当前时间 2018-05-31 21:31:53.430575
now = datetime.datetime.now()
print(now)
print(type(now))
# 获取当天日期 2018-05-31
today = datetime.datetime.now().date()
today = datetime.date.today()
print(today)
# 当天开始和结束时间 2018-05-31 00:00:00 2018-05-31 23:59:59.999999
print(datetime.datetime.combine(datetime.date.today(), datetime.time.min))
print(datetime.datetime.combine(datetime.date.today(), datetime.time.max))
# 时间加减
today = datetime.date.today()
tomorrow = today + datetime.timedelta(days=1)
print('tomorrow:' + str(tomorrow))
# 本周最后一天(本周周日)
today = datetime.date.today()
sunday = today + datetime.timedelta(6 - today.weekday())
print('sunday:' + str(sunday))
# 本月最后一天
today = datetime.date.today()
_, last_day_num = calendar.monthrange(today.year, today.month)
last_day = datetime.date(today.year, today.month, last_day_num)
print('last_day:' + str(last_day))
# 上月最后一天
today = datetime.date.today()
first = datetime.date(day=1, month=today.month, year=today.year)
lastMonth = first - datetime.timedelta(days=1)
print('lastMonth:' + str(lastMonth))
# 时间戳
timestamp = time.time()
print(timestamp)
# time tuple time.struct_time(tm_year=2018, tm_mon=5, tm_mday=31, tm_hour=21, tm_min=35, tm_sec=14, tm_wday=3, tm_yday=151, tm_isdst=0)
localtime = time.localtime()
print(localtime)
# 获取下个周五
# def getNextFriday(startDay):
# today = datetime.date.today()
oneday = datetime.timedelta(days=1)
m1 = calendar.FRIDAY
while startDay.weekday() != m1:
startDay += oneday
nextFriday = startDay.strftime('%Y%m%d')
return nextFriday
2.多种时间格式相互转换
# datetime->string(2018-05-31 21:44:20)
now = datetime.datetime.now()
now_str = now.strftime("%Y-%m-%d %H:%M:%S")
print(now_str)
# datetime -> date
example_date = datetime.datetime.now().date()
print(example_date)
# datetime -> timestamp
now = datetime.datetime.now()
timestamp = time.mktime(now.timetuple())
print(timestamp)
# string->datetime
example_datetime = datetime.datetime.strptime("2018-05-31 21:31:53", "%Y-%m-%d %H:%M:%S")
print(example_datetime)
# date -> datetime
today = datetime.date.today()
example_datetime = datetime.datetime.combine(today, datetime.time())
print(example_datetime)
# timestamp->datetime
example_datetime = datetime.datetime.fromtimestamp(1421077403.0)
print(example_datetime)
# 时间加减
starttime = starttime + datetime.timedelta(days=1)