pythom模块datetime

2024-08-27 06:12
文章标签 模块 datetime pythom

本文主要是介绍pythom模块datetime,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、datetime模块常用方法

1. 导入模块

import datetime

2. 获取当前日期和时间

  • 获取当前日期和时间:
    now = datetime.datetime.now()
    print(now)  # 例如:2024-08-18 14:35:10.123456
    
  • 获取当前日期:
    today = datetime.date.today()
    print(today)  # 例如:2024-08-18
    
  • 获取当前时间:
    current_time = datetime.datetime.now().time()
    print(current_time)  # 例如:14:35:10.123456
    

3. 创建特定日期和时间

  • 创建特定日期:
    date = datetime.date(2024, 8, 18)
    print(date)  # 2024-08-18
    
  • 创建特定时间:
    time = datetime.time(14, 30, 0)
    print(time)  # 14:30:00
    
  • 创建特定日期和时间:
    dt = datetime.datetime(2024, 8, 18, 14, 30, 0)
    print(dt)  # 2024-08-18 14:30:00
    

4. 日期运算

  • 日期加减:
    from datetime import timedeltatoday = datetime.date.today()
    yesterday = today - timedelta(days=1)
    tomorrow = today + timedelta(days=1)print(yesterday)  # 昨天的日期
    print(tomorrow)   # 明天的日期
    
  • 计算日期差:
    date1 = datetime.date(2024, 8, 18)
    date2 = datetime.date(2023, 8, 18)
    delta = date1 - date2
    print(delta.days)  # 两日期之间的天数差
    
  • 创建 timedelta 对象:
    可以通过传递时间参数来创建 timedelta对象,常用的参数包括 days, seconds, microseconds, milliseconds, minutes, hours, 和 weeks
from datetime import timedeltadelta = timedelta(days=5, hours=3, minutes=30)
print(delta)  # 输出: 5 days, 3:30:00

timedelta 对象包含以下属性:

  • days: 天数
  • seconds: 秒数
  • microseconds: 微秒数
  • total_seconds: 总秒数

5. 格式化日期和时间

  • datetime 对象格式化为字符串:
    now = datetime.datetime.now()
    formatted_date = now.strftime("%Y-%m-%d %H:%M:%S")
    print(formatted_date)  # 例如:2024-08-18 14:35:10
    
  • 将字符串解析为 datetime 对象:
    date_str = "2024-08-18 14:30:00"
    dt = datetime.datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S")
    print(dt)  # 2024-08-18 14:30:00
    

6. 时区处理

  • 获取当前时间并设置时区:
    import pytztimezone = pytz.timezone('Asia/Shanghai')
    dt_with_tz = datetime.datetime.now(timezone)
    print(dt_with_tz)
    
  • datetime 对象转换为不同的时区:
    timezone_ny = pytz.timezone('America/New_York')
    dt_ny = dt_with_tz.astimezone(timezone_ny)
    print(dt_ny)
    

7. 获取指定时间的时间戳

dt = datetime.datetime(2024, 8, 18, 14, 30, 0)
timestamp = dt.timestamp()
print(timestamp)  # 生成一个浮点数时间戳

8. 从时间戳生成 datetime 对象

timestamp = 1726681800.0
dt = datetime.datetime.fromtimestamp(timestamp)
print(dt)  # 例如:2024-08-18 14:30:00

二、常用函数

1. 13位时间戳转换成Y/m/d H:M:S格式

import datetimedef timestamp_to_datetime(timestamp, format="%Y/%m/%d %H:%M:%S"):timestamp = int(timestamp) / 1000  # 将毫秒转换为秒dt = datetime.datetime.fromtimestamp(timestamp) # 这里的dt其实是一个datetime格式: <class 'datetime.datetime'>return dt.strftime(format)# 测试代码
timestamp = 1678886400000
formatted_time = timestamp_to_datetime(timestamp)
print(formatted_time)  # 输出:2023/03/15 16:00:00

2. Y/m/d H:M:S格式转换成13位时间戳

import datetimedef datetime_to_timestamp(datetime_str, format="%Y/%m/%d %H:%M:%S"):dt = datetime.datetime.strptime(datetime_str, format) # 这里的dt其实是一个datetime格式: <class 'datetime.datetime'>timestamp = dt.timestamp() * 1000  # 将秒转换为毫秒return int(timestamp)# 测试代码
datetime_str = "2023/03/15 16:00:00"
timestamp = datetime_to_timestamp(datetime_str)
print(timestamp)  # 输出:1678886400000

datetime.datetime.strptime() 方法用于将字符串解析为 datetime 对象。它接受两个参数:

  • date_string: 要解析的字符串。
  • format: 字符串的格式。

该方法返回一个 datetime 对象,表示解析后的日期和时间。

这篇关于pythom模块datetime的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1110862

相关文章

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

python中的与时间相关的模块应用场景分析

《python中的与时间相关的模块应用场景分析》本文介绍了Python中与时间相关的几个重要模块:`time`、`datetime`、`calendar`、`timeit`、`pytz`和`dateu... 目录1. time 模块2. datetime 模块3. calendar 模块4. timeit

Python模块导入的几种方法实现

《Python模块导入的几种方法实现》本文主要介绍了Python模块导入的几种方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录一、什么是模块?二、模块导入的基本方法1. 使用import整个模块2.使用from ... i

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

Jenkins构建Maven聚合工程,指定构建子模块

一、设置单独编译构建子模块 配置: 1、Root POM指向父pom.xml 2、Goals and options指定构建模块的参数: mvn -pl project1/project1-son -am clean package 单独构建project1-son项目以及它所依赖的其它项目。 说明: mvn clean package -pl 父级模块名/子模块名 -am参数

寻迹模块TCRT5000的应用原理和功能实现(基于STM32)

目录 概述 1 认识TCRT5000 1.1 模块介绍 1.2 电气特性 2 系统应用 2.1 系统架构 2.2 STM32Cube创建工程 3 功能实现 3.1 代码实现 3.2 源代码文件 4 功能测试 4.1 检测黑线状态 4.2 未检测黑线状态 概述 本文主要介绍TCRT5000模块的使用原理,包括该模块的硬件实现方式,电路实现原理,还使用STM32类

python内置模块datetime.time类详细介绍

​​​​​​​Python的datetime模块是一个强大的日期和时间处理库,它提供了多个类来处理日期和时间。主要包括几个功能类datetime.date、datetime.time、datetime.datetime、datetime.timedelta,datetime.timezone等。 ----------动动小手,非常感谢各位的点赞收藏和关注。----------- 使用datet

C8T6超绝模块--EXTI

C8T6超绝模块–EXTI 大纲 控制流程结构体分析EXTI实现按键 具体案例 控制流程 这里是流程框图,具体可以去看我STM32专栏的EXTI的具体分析 结构体分析 typedef struct {uint32_t EXTI_Line; // 中断/事件线EXTIMode_TypeDef EXTI_Mode; // EXTI 模式EXTITrigger_TypeDef EXTI_