ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

datetime

2022-05-15 23:32:46  阅读:208  来源: 互联网

标签:15 datetime tm time print dt


import datetime
import time

print("{:=^50s}".format("datetime.date"))
#datetime.date
#生成日期
d = datetime.date.today()
print(d, type(d))
d = datetime.date(2020, 8, 24)
print(d, type(d))
d = datetime.date.fromtimestamp(time.time()) #时间戳
print(d, type(d))

# 类属性
print(datetime.date.min)
print(datetime.date.max)
print(datetime.date.resolution) #timedelta

# 实例属性
print(d.year)
print(d.month)
print(d.day)

#常用的实例方法
# datetime.date对象 -> 格式化时间对象
print(d.timetuple())

#其他方法
# replace
print(d.replace(2020))
print(d.replace(d.year, 9))
print(d.replace(day=20))
print(d.replace(d.year, d.month, 10))
print(d.toordinal()) #从0001-01-01到现在的天数
print(d.weekday()) #0代表周一
print(d.isoweekday()) #1代表周一, 0周日
print(d.isoformat()) #标准日期格式的返回
print(d.strftime("%Y年%m月%d日"))

print("{:=^50s}".format("datetime.time"))


# time
# 生成时间
t = datetime.time(15, 10, 45, 88888)
print(t ,type(t))

# 类方法
print(datetime.time.min)
print(datetime.time.max)

#实例属性
print(t.hour)
print(t.minute)
print(t.second)
print(t.microsecond)

# 其他方法
print(t.isoformat())
print(t.strftime("%H时%M分%S秒 %f微秒"))

#datetime.datetime
print("{:=^50s}".format("datetime.datetime"))
dt = datetime.datetime(2020, 8, 28, 13, 22, 34, 88888)
print(dt, type(dt))
dt = datetime.datetime.today()
print(dt, type(dt))
dt = datetime.datetime.utcnow()
print(dt, type(dt))
# 时间戳 -> dt
dt = datetime.datetime.fromtimestamp(time.time())
print(dt, type(dt))
dt = datetime.datetime.utcfromtimestamp(time.time())
print(dt, type(dt))
# 字符串 -> dt
dt = datetime.datetime.strptime("2020-08-28 13:22:34", "%Y-%m-%d %H:%M:%S")
print(dt, type(dt))
#date.time -> datetime
dt = datetime.datetime.combine(d, t)
print(dt, type(dt))

#属性
print(dt.year)
print(dt.month)
print(dt.day)
print(dt.hour)
print(dt.minute)
print(dt.second)
print(dt.microsecond)

#replace方法
print(dt.replace(second=57, day=20))

#datetime -> 结构化对象
print(dt.timetuple())
# datetime -> 时间戳
print(dt.timestamp())
# datetime -> 格式化字符串
print(dt.strftime("%Y年%m月%d日 %H时%M分%S秒 %f微秒"))


# 时间戳 -》datetime
print(datetime.datetime.fromtimestamp(time.time()))
# 格式化对象 -》datetime
print(datetime.datetime.strptime("2020-08-28 13:22:34", "%Y-%m-%d %H:%M:%S"))
#结构化对象 -》 datetime
print(datetime.datetime.fromtimestamp(time.mktime(time.localtime())))

print("{:=^50s}".format("datetime.timedate"))
# datetime.timedelta
# class daterime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, hours=0, weeks=0)
# 生成时间差
td = datetime.timedelta(days=10)
print(td, type(td))
td = datetime.timedelta(days=10, hours=5)
print(td, type(td))
td = datetime.timedelta(days=-10, hours=-5)
print(td, type(td))
td = datetime.timedelta(hours=75)
print(td, type(td))

#计算目标日期
dt = datetime.datetime.today()
print('现在是{}'.format(dt.strftime('%Y年%m月%d日 %H时%M分%S秒')))
delta = datetime.timedelta(days=10)
target = dt + delta
print(F"十天后是{target.strftime('%Y年%m月%d日 %H时%M分%S秒')}")

# 计算时间差
dt1 = datetime.datetime.today()
dt2 = datetime.datetime.utcnow()
td = dt1 - dt2
print("我们与utc时间的差是:{:.0f}小时".format(td.seconds/3600))


==================datetime.date===================
2022-05-15 <class 'datetime.date'>
2020-08-24 <class 'datetime.date'>
2022-05-15 <class 'datetime.date'>
0001-01-01
9999-12-31
1 day, 0:00:00
2022
5
15
time.struct_time(tm_year=2022, tm_mon=5, tm_mday=15, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=6, tm_yday=135, tm_isdst=-1)
2020-05-15
2022-09-15
2022-05-20
2022-05-10
738290
6
7
2022-05-15
2022年05月15日
==================datetime.time===================
15:10:45.088888 <class 'datetime.time'>
00:00:00
23:59:59.999999
15
10
45
88888
15:10:45.088888
15时10分45秒 088888微秒
================datetime.datetime=================
2020-08-28 13:22:34.088888 <class 'datetime.datetime'>
2022-05-15 23:21:29.265289 <class 'datetime.datetime'>
2022-05-15 15:21:29.265288 <class 'datetime.datetime'>
2022-05-15 23:21:29.265289 <class 'datetime.datetime'>
2022-05-15 15:21:29.265289 <class 'datetime.datetime'>
2020-08-28 13:22:34 <class 'datetime.datetime'>
2022-05-15 15:10:45.088888 <class 'datetime.datetime'>
2022
5
15
15
10
45
88888
2022-05-20 15:10:57.088888
time.struct_time(tm_year=2022, tm_mon=5, tm_mday=15, tm_hour=15, tm_min=10, tm_sec=45, tm_wday=6, tm_yday=135, tm_isdst=-1)
1652598645.088888
2022年05月15日 15时10分45秒 088888微秒
2022-05-15 23:21:29.265289
2020-08-28 13:22:34
2022-05-15 23:21:29
================datetime.timedate=================
10 days, 0:00:00 <class 'datetime.timedelta'>
10 days, 5:00:00 <class 'datetime.timedelta'>
-11 days, 19:00:00 <class 'datetime.timedelta'>
3 days, 3:00:00 <class 'datetime.timedelta'>
现在是2022年05月15日 23时21分29秒
十天后是2022年05月25日 23时21分29秒
我们与utc时间的差是:8小时



标签:15,datetime,tm,time,print,dt
来源: https://www.cnblogs.com/fclzh/p/16275228.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有