time 和 datetime是Python中两个用于处理时间和日期的模块,它们具有不同的功能和用途。本文主要介绍一下Python time 和 datetime 模块的区别,以及用法的相关示例代码。

1、time 和 datetime 模块的区别

time模块主要用于处理时间戳(timestamp),它提供了基本的时间操作功能。datetime模块提供了更高级的日期和时间操作功能,包括日期的表示、计算、格式化和解析。

time模块时间戳是从1970年1月1日UTC(协调世界时)的午夜开始的秒数,通常用整数表示。time模块用于获取当前时间、计算时间差、格式化时间等基本操作。datetime对象包括年、月、日、时、分、秒等信息,适合处理日期和时间的各种操作。datetime模块还提供了处理时区、日期算术、时间差等更复杂的功能。

2、time 模块的使用

1)获取当前时间戳

import time

current_timestamp = time.time()
print("当前时间戳:", current_timestamp)

2)格式化时间戳为可读时间

import time

current_timestamp = time.time()
print("当前时间戳:", current_timestamp)
formatted_time = time.ctime(current_timestamp)
print("格式化后的时间:", formatted_time)

3)获取当前本地时间的

import time

local_time = time.localtime()
print("本地时间:", local_time)

4)格式化时间字符串

import time

local_time = time.localtime()
print("本地时间:", local_time)
formatted_local_time = time.strftime("%Y-%m-%d %H:%M:%S", local_time)
print("格式化后的本地时间:", formatted_local_time)

5)线程休眠

import time

print("开始休眠")
time.sleep(2)  # 休眠2秒
print("休眠结束")

6)获取CPU时钟时间

import time

cpu_time = time.clock()
print("CPU时钟时间:", cpu_time)

7)计时器示例

import time

start_time = time.perf_counter()
# 执行一些任务
end_time = time.perf_counter()
elapsed_time = end_time - start_time
print("经过的时间:", elapsed_time)

8)时间格式字符串解析

import time

time_string = "2023-09-30 15:30:00"
parsed_time = time.strptime(time_string, "%Y-%m-%d %H:%M:%S")
print("解析后的时间:", parsed_time)

9)获取系统时区

import time

time_zone = time.timezone
print("系统时区:", time_zone)

3、datetime 模块使用

1)获取当前日期和时间

from datetime import datetime

current_datetime = datetime.now()
print("当前日期和时间:", current_datetime)

2)格式化日期和时间为字符串

from datetime import datetime

current_datetime = datetime.now()
print("当前日期和时间:", current_datetime)
formatted_datetime = current_datetime.strftime("%Y-%m-%d %H:%M:%S")
print("格式化后的日期时间:", formatted_datetime)

3)解析字符串为datetime对象

from datetime import datetime

date_string = "2023-09-30 15:30:00"
parsed_datetime = datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print("解析后的日期时间:", parsed_datetime)

4)计算时间差

from datetime import datetime

date_string = "2023-09-30 15:30:00"
parsed_datetime = datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
delta = parsed_datetime - current_datetime
print("时间差:", delta)

5)日期算术

from datetime import datetime
from datetime import timedelta

current_datetime = datetime.now()
new_date = current_datetime + timedelta(days=7)  # 加7天
print("新日期:", new_date)

6)获取日期的年、月、日等部分

from datetime import datetime

current_datetime = datetime.now()
year = current_datetime.year
month = current_datetime.month
day = current_datetime.day
print("年:", year, "月:", month, "日:", day)

7)获取当前日期

from datetime import datetime

current_datetime = datetime.now()
current_date = current_datetime.date()
print("当前日期:", current_date)

8)获取当前时间

from datetime import datetime

current_datetime = datetime.now()
current_time = current_datetime.time()
print("当前时间:", current_time)

9)获取日期的星期

from datetime import datetime

current_datetime = datetime.now()
weekday = current_datetime.weekday()
print("星期(0-6,0表示星期一):", weekday)

10)创建自定义日期和时间

from datetime import datetime

custom_datetime = datetime(2023, 9, 30, 15, 30, 0)
print("自定义日期和时间:", custom_datetime)