自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一文掌握 Python 中的 datetime 模塊

開(kāi)發(fā)
Datetime 模塊是 Python 標(biāo)準(zhǔn)庫(kù)中的一個(gè)模塊,用于處理日期和時(shí)間,它提供了多種類(lèi)和方法,幫助我們輕松地創(chuàng)建、操作和格式化日期和時(shí)間。

什么是 datetime 模塊?

datetime 模塊是 Python 標(biāo)準(zhǔn)庫(kù)中的一個(gè)模塊,用于處理日期和時(shí)間。它提供了多種類(lèi)和方法,幫助我們輕松地創(chuàng)建、操作和格式化日期和時(shí)間。

1. 導(dǎo)入 datetime 模塊

首先,我們需要導(dǎo)入 datetime 模塊。通常我們會(huì)導(dǎo)入整個(gè)模塊,或者只導(dǎo)入我們需要的類(lèi)和方法。

import datetime

或者:

from datetime import datetime, date, time, timedelta

2. 獲取當(dāng)前日期和時(shí)間

使用 datetime.now() 方法可以獲取當(dāng)前的日期和時(shí)間。

# 獲取當(dāng)前日期和時(shí)間
current_datetime = datetime.datetime.now()
print("當(dāng)前日期和時(shí)間:", current_datetime)

3. 獲取當(dāng)前日期

使用 date.today() 方法可以獲取當(dāng)前的日期。

# 獲取當(dāng)前日期
current_date = datetime.date.today()
print("當(dāng)前日期:", current_date)

4. 創(chuàng)建特定的日期和時(shí)間

我們可以使用 datetime 類(lèi)來(lái)創(chuàng)建特定的日期和時(shí)間。

# 創(chuàng)建特定的日期和時(shí)間
specific_datetime = datetime.datetime(2023, 10, 1, 12, 30, 0)
print("特定的日期和時(shí)間:", specific_datetime)

5. 格式化日期和時(shí)間

使用 strftime 方法可以將日期和時(shí)間格式化為字符串。

# 格式化日期和時(shí)間
formatted_datetime = specific_datetime.strftime("%Y-%m-%d %H:%M:%S")
print("格式化的日期和時(shí)間:", formatted_datetime)

6. 解析日期和時(shí)間字符串

使用 strptime 方法可以將字符串解析為日期和時(shí)間對(duì)象。

# 解析日期和時(shí)間字符串
parsed_datetime = datetime.datetime.strptime("2023-10-01 12:30:00", "%Y-%m-%d %H:%M:%S")
print("解析后的日期和時(shí)間:", parsed_datetime)

7. 計(jì)算時(shí)間差

使用 timedelta 類(lèi)可以計(jì)算兩個(gè)日期或時(shí)間之間的差值。

# 計(jì)算時(shí)間差
start_time = datetime.datetime(2023, 10, 1, 12, 0, 0)
end_time = datetime.datetime(2023, 10, 1, 12, 30, 0)
time_difference = end_time - start_time
print("時(shí)間差:", time_difference)

8. 增加或減少時(shí)間

使用 timedelta 類(lèi)可以增加或減少日期和時(shí)間。

# 增加時(shí)間
new_time = start_time + datetime.timedelta(hours=2)
print("增加2小時(shí)后的時(shí)間:", new_time)

# 減少時(shí)間
old_time = end_time - datetime.timedelta(minutes=15)
print("減少15分鐘后的時(shí)間:", old_time)

9. 獲取日期的各個(gè)部分

可以使用 year, month, day, hour, minute, second 屬性來(lái)獲取日期和時(shí)間的各個(gè)部分。

# 獲取日期和時(shí)間的各個(gè)部分
year = specific_datetime.year
month = specific_datetime.month
day = specific_datetime.day
hour = specific_datetime.hour
minute = specific_datetime.minute
second = specific_datetime.second

print(f"年: {year}, 月: {month}, 日: {day}, 時(shí): {hour}, 分: {minute}, 秒: {second}")

10. 時(shí)間戳

使用 timestamp 方法可以將日期和時(shí)間轉(zhuǎn)換為時(shí)間戳,使用 fromtimestamp 方法可以將時(shí)間戳轉(zhuǎn)換為日期和時(shí)間。

# 將日期和時(shí)間轉(zhuǎn)換為時(shí)間戳
timestamp = specific_datetime.timestamp()
print("時(shí)間戳:", timestamp)

# 將時(shí)間戳轉(zhuǎn)換為日期和時(shí)間
from_timestamp = datetime.datetime.fromtimestamp(timestamp)
print("從時(shí)間戳轉(zhuǎn)換的日期和時(shí)間:", from_timestamp)

實(shí)戰(zhàn)案例:日程管理器

假設(shè)我們要開(kāi)發(fā)一個(gè)簡(jiǎn)單的日程管理器,用戶(hù)可以輸入任務(wù)的名稱(chēng)、開(kāi)始時(shí)間和結(jié)束時(shí)間,程序會(huì)計(jì)算任務(wù)的持續(xù)時(shí)間并顯示所有任務(wù)。

import datetime

class Task:
    def __init__(self, name, start_time, end_time):
        self.name = name
        self.start_time = datetime.datetime.strptime(start_time, "%Y-%m-%d %H:%M:%S")
        self.end_time = datetime.datetime.strptime(end_time, "%Y-%m-%d %H:%M:%S")
    
    def duration(self):
        return self.end_time - self.start_time
    
    def __str__(self):
        return (f"任務(wù): {self.name}\n"
                f"開(kāi)始時(shí)間: {self.start_time.strftime('%Y-%m-%d %H:%M:%S')}\n"
                f"結(jié)束時(shí)間: {self.end_time.strftime('%Y-%m-%d %H:%M:%S')}\n"
                f"持續(xù)時(shí)間: {self.duration()}")

def main():
    tasks = []
    while True:
        name = input("請(qǐng)輸入任務(wù)名稱(chēng)(輸入'q'退出): ")
        if name.lower() == 'q':
            break
        start_time = input("請(qǐng)輸入開(kāi)始時(shí)間(格式: YYYY-MM-DD HH:MM:SS): ")
        end_time = input("請(qǐng)輸入結(jié)束時(shí)間(格式: YYYY-MM-DD HH:MM:SS): ")
        task = Task(name, start_time, end_time)
        tasks.append(task)
    
    print("\n所有任務(wù):")
    for task in tasks:
        print(task)

if __name__ == "__main__":
    main()

總結(jié)

本文介紹了 datetime 模塊的基本用法,包括如何獲取當(dāng)前日期和時(shí)間、創(chuàng)建特定的日期和時(shí)間、格式化和解析日期時(shí)間字符串、計(jì)算時(shí)間差、增加或減少時(shí)間、獲取日期的各個(gè)部分、以及時(shí)間戳的轉(zhuǎn)換。

責(zé)任編輯:趙寧寧 來(lái)源: 小白PythonAI編程
相關(guān)推薦

2021-09-11 10:41:27

PythonPickle模塊

2024-12-17 17:20:00

Python列表

2024-11-27 06:46:47

Python列表推導(dǎo)式嵌套邏輯

2022-12-20 07:39:46

2023-12-21 17:11:21

Containerd管理工具命令行

2022-10-21 17:24:34

契約測(cè)試定位

2017-11-28 15:20:27

Python語(yǔ)言編程

2021-07-10 14:32:30

Python導(dǎo)入模塊

2021-05-12 18:22:36

Linux 內(nèi)存管理

2025-04-18 05:50:59

Spring接口Aware

2023-10-24 11:44:21

2023-12-15 09:45:21

阻塞接口

2020-10-09 07:56:52

Linux

2023-10-04 00:02:00

本文將從入門(mén)到精通,冒泡排序

2024-06-28 09:52:47

列表Python

2025-04-03 08:30:00

Python數(shù)據(jù)庫(kù)ORM

2023-10-21 20:50:00

Python項(xiàng)目PyCharm

2017-10-18 17:16:59

ZeroHeroPython

2023-12-22 08:38:02

Pythondatetimetime

2023-09-03 21:09:28

光纖通信光模塊
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)