(datetime/subprocess)模块

2023-12-21 06:23:01

datetime 模块说白了就是 Python 中用于处理日期和时间的模块。

【 一 】导入模块

import datetime

【 二?】主要类

datetime模块中包含的主要类为:

  • date:日期对象,常用的属性有year, month, day等
  • time:时间对象,主要的属性有hour, minute, second, microsecond
  • datetime:日期时间对象,属性date和属性datetime的组合
  • datetime_CAPI:日期对象的C语言接口
  • timedelta:两个时间之间的时间间隔
  • tzinfo:时区信息对象的抽象基类

【 三?】常量

主要是有两个常量:

  1. MAXYEAR:返回能表示的最大年份,datetime.MAXYEAR
  2. MINYEAR:返回能表示最小的年份,datetime.MINYEAR

【 四 】5大类

下面介绍的datetime模块中5大类的具体使用方法:

  • date
  • time
  • datetime
  • timedelta
  • tzinfo

【 五 】使用方法

【 1 】自定义日期并格式化

方法一

# import datetime

# # res = datetime.date(2023,12,20)
# print(datetime.date(2023,12,20))
# 2023-12-20

方法二

import datetime
from datetime import date
today = date.today
print(today)#  <built-in method today of type object at 0x00007FFCA7E88610>
res = datetime.date(2023,12,20)
print(res)
#2023-12-20

【 2?】 通过year、month、day 、weekday、isoweekday5个属性描述符来访问:

import datetime

res = datetime.date(2023, 12, 20)

# 获取年、月、日和星期几
year = res.year
month = res.month
day = res.day
weekday = res.weekday()

# 将星期几转换为具体的名称
weekday_names = ["星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"]
weekday_name = weekday_names[weekday]

# 打印结果
print("今年", year)# 今年 2023
print('本月', month)# 本月 12
print('今日', day)# 今日 20
print('星期几', weekday_name) #星期几 星期三

print(res) #2023-12-20



import datetime
local_date = datetime.datetime.today()
print(local_date)
print(local_date.year)
print(local_date.month)
print(local_date.day)
print(local_date.weekday())
print(local_date.isoweekday())
# 2023-12-20 16:28:41.882140
# 2023
# 12
# 20
# 2
# 3

【 3 】获取本地时间

获取年月日

import datetime
now_date = datetime.date.today()
print(now_date) #2023-12-20

获取年月日分秒

import datetime
local_date = datetime.datetime.today()
print(local_date)# 2023-12-20 16:23:30.116422

【 六 】timedelta对象

???你可以怎么理解timedelta datetime 模块中的一个类,用于表示时间间隔(时间差)。

from datetime import datetime, timedelta

# 获取当前日期和时间
now_day = datetime.now()

# 创建一个 timedelta 对象表示一天的时间间隔
one_day = timedelta(days=1)

# 计算昨天的日期
yesterday = now_day - one_day

# 计算明天的日期
tomorrow = now_day + one_day

# 输出结果
print("当前日期和时间:", now_day)# 当前日期和时间: 2023-12-20 16:46:46.628095
print("昨天的日期:", yesterday)# 昨天的日期: 2023-12-19 16:46:46.628095
print("明天的日期:", tomorrow)#  明天的日期: 2023-12-21 16:46:46.628095

??timedelta 对象还支持其他参数,如 hoursminutesseconds 等,以及负数用于表示过去的时间间隔。

from datetime import timedelta
now_day = datetime.now()
now_time = timedelta(hours=2,minutes=30)
new_time = datetime.now() + one_day
print('两个半小时后的时间:' ,new_time)
# 两个半小时后的时间: 2023-12-21 16:57:31.982374

设计一个生日倒计时

import datetime

birthday = datetime.date(2024, 1, 31)
now_date = datetime.date.today()
today = datetime.date.today()
days = birthday - now_date

print('生日:{}'.format(birthday))# 生日:2024-01-31
print('今天的日期:{}'.format(today))# 今天的日期:2023-12-20
print('距离生日还有{}天'.format(days))# 距离生日还有42 days, 0:00:00天

文章来源:https://blog.csdn.net/m0_58310590/article/details/135108505
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。