Python基础-常用内建模块 datetime

datetime 模块

datetime是Python处理日期和时间的标准库

获取当前日期和时间

示例

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 常用内建模块-datetime

# 注意到datetime是模块,datetime模块还包含一个datetime类,通过from datetime import datetime导入的才是datetime这个类。
from datetime import datetime

# 获取当前日期和时间
def getCurDateTime():
    # 获取当前系统时间
    now = datetime.now()
    print(now)
    print(type(now))

# 获取指定日期和时间
def customDateTime():
    dt = datetime(2018, 8, 18, 8, 8, 8)
    print(dt)

def runTest():
    getCurDateTime()
    customDateTime()

runTest()

运行结果

D:\PythonProject\sustudy>python main.py
2017-12-18 14:43:12.464594
<class 'datetime.datetime'>
2018-08-18 08:08:08

datetime转换为 timestamp

timestamp时间是已1970年1月1日 00:00:00 UTC+00:00时区的时刻为起始时间的计算的

# datetime 转换为 timestamp
def datetime2timestamp():
    dt = datetime(2018, 8, 18, 8, 8, 8)
    result = dt.timestamp()
    # 类似这样的浮点数格式 1534550888.0
    print(result)

timestamp 转换为 datetime

# timestamp 转换为 datetime
def timestamp2datetime():
    time = 1534550888.0

    # 本地时间即本地市区对应的时间
    result = datetime.fromtimestamp(time)
    # 2018-08-18 08:08:08
    print(result)

    # UTC标准时间,格林威治 UTC+0:00时区
    result = datetime.utcfromtimestamp(time)
    # 2018-08-18 00:08:08
    print(result)

str 转换为 datetime

# str 转换为 datetime
def str2datetime(strTime):
    mTime = datetime.strptime(strTime, "%Y-%m-%d %H:%M:%S")
    print(mTime)

def runTest():
    str2datetime("2018-08-18 08:08:08")

runTest()

datetime 转换为 str

# datetime 转换为 str  
def datetime2str():
    now = datetime.now()
    # Mon , Dec 18 15 : 25
    print(now.strftime("%a , %b %d %H : %M"))

datetime 加减

# datetime 加减
def operaterDateTime():
    now = datetime.now()
    print("curTime ", now)

    result = now + timedelta(days = 1)
    print("新增一天 ", result)

    result = now - timedelta(days = 1)
    print("减去一天 ", result)

运行结果

D:\PythonProject\sustudy>python main.py
curTime  2017-12-18 15:33:55.771059
新增一天  2017-12-19 15:33:55.771059
减去一天  2017-12-17 15:33:55.771059

本地时间转换为UTC时间

# 本地时间转换为UTC时间
def local2UtcTime():
    # 本地时间
    now = datetime.now()
    print("本地时间 ", now)

    utcNow = now.astimezone(timezone.utc)
    print("UTC时间 ", utcNow)

运行结果

D:\PythonProject\sustudy>python main.py
本地时间  2017-12-18 17:06:53.723494
UTC时间  2017-12-18 09:06:53.723494+00:00

完整示例

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 常用内建模块-datetime
from datetime import datetime, timedelta,timezone

# datetime 转换为 timestamp
def datetime2timestamp():
    dt = datetime(2018, 8, 18, 8, 8, 8)
    result = dt.timestamp()
    # 类似这样的浮点数格式 1534550888.0
    print(result)

# timestamp 转换为 datetime
def timestamp2datetime():
    time = 1534550888.0

    # 本地时间即本地市区对应的时间
    result = datetime.fromtimestamp(time)
    # 2018-08-18 08:08:08
    print(result)

    # UTC标准时间,格林威治 UTC+0:00时区
    result = datetime.utcfromtimestamp(time)
    # 2018-08-18 00:08:08
    print(result)

# str 转换为 datetime
# strTime = "2018-08-18 08:08:08"
def str2datetime(strTime):
    mTime = datetime.strptime(strTime, "%Y-%m-%d %H:%M:%S")
    # 2018-08-18 08:08:08
    print(mTime)

# datetime 转换为 str  
def datetime2str():
    now = datetime.now()
    # Mon , Dec 18 15 : 25
    print(now.strftime("%a , %b %d %H : %M"))

# datetime 加减
def operaterDateTime():
    now = datetime.now()
    print("curTime ", now)

    result = now + timedelta(days = 1)
    print("新增一天 ", result)

    result = now - timedelta(days = 1)
    print("减去一天 ", result)

# 本地时间转换为UTC时间
def local2UtcTime():
    # 本地时间
    now = datetime.now()
    print("本地时间 ", now)

    utcNow = now.astimezone(timezone.utc)
    print("UTC时间 ", utcNow)


def runTest():
    pass

runTest()
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

法迪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值