Python武器库开发-常用模块之time模块(十二)

2023-11-02 17:36

本文主要是介绍Python武器库开发-常用模块之time模块(十二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

常用模块之datetime模块(十二)

在本文中,我们将详细讨论datetime模块。我们将通过实例学习使用datetime模块中定义的不同的与时间相关的函数。

Python有一个名为datetime的模块,用于处理日期和时间。在深入学习之前,让我们创建一些与日期和时间相关的简单程序。

获取当前日期和时间:

import datetimedatetime_object = datetime.datetime.now()
print(datetime_object)

当你运行程序时,输出将类似于:

在这里插入图片描述

这里,我们使用import datetime语句导入了datetime模块。

datetime模块中定义的一个类是datetime类。然后,我们使用now()方法创建一个包含当前本地日期和时间的datetime对象。

获取当前日期和时间、年、月、日、时、分:

from datetime import datetimea = datetime.now()print("当前的年:", a.year)
print("当前的月",a.month)
print("当前的日",a.day)
print("当前的时",a.hour)
print("当前的分",a.minute)

当你运行程序时,输出将类似于:

在这里插入图片描述

获取当前日期:

import datetimedate_object = datetime.date.today()
print(date_object)

当你运行程序时,输出将类似于:

在这里插入图片描述

在这个程序中,我们使用了date类中定义的today()方法来获取一个包含当前本地日期的date对象。

我们可以使用dir()函数来获取包含模块所有属性的列表:

import datetimeprint(dir(datetime))

运行该程序时,输出为:

在这里插入图片描述

datetime模块中常用的类是:

  • date类
  • time类
  • datetime类
  • timedelta类

表示日期的Date对象:

import datetimed = datetime.date(2019, 4, 13)
print(d)

运行该程序时,输出为:

在这里插入图片描述

从时间戳获取日期:

我们还可以从时间戳创建日期对象。Unix时间戳是特定日期到UTC的1970年1月1日之间的秒数。可以使用fromtimestamp()方法将时间戳转换为日期。

from datetime import datetimestamp = date.fromtimestamp(1576244364)
print("日期 =", timestamp)

运行该程序时,输出为:

在这里插入图片描述

打印今天的年,月和日:

我们可以轻松地从日期对象获取年,月,日,星期几等。就是这样:

from datetime import date# 今天的日期对象
today = date.today() print("当前年:", today.year)
print("当前月:", today.month)
print("当前日:", today.day)

运行该程序时,输出为:

在这里插入图片描述

表示时间的时间对象:

from datetime import time# time(hour = 0, minute = 0, second = 0)
a = time()
print("a =", a)# time(hour, minute and second)
b = time(11, 34, 56)
print("b =", b)# time(hour, minute and second)
c = time(hour = 11, minute = 34, second = 56)
print("c =", c)# time(hour, minute, second, microsecond)
d = time(11, 34, 56, 234566)
print("d =", d)

运行该程序时,输出为:

在这里插入图片描述

打印时,分,秒和微秒:

创建time对象后,您可以轻松打印其属性,例如小时,分钟等

from datetime import timea = time(11, 34, 56,microsecond=10)print("小时=", a.hour)
print("分钟=", a.minute)
print("秒=", a.second)
print("微秒=", a.microsecond)

运行示例时,输出将是:

在这里插入图片描述

打印年,月,时,分和时间戳:

from datetime import datetimea = datetime(2019, 12, 28, 23, 55, 59, 342380)
print("年 =", a.year)
print("月 =", a.month)
print("日 =", a.day)
print("时 =", a.hour)
print("份 =", a.minute)
print("时间戳 =", a.timestamp())

运行该程序时,输出为:

在这里插入图片描述

两个日期和时间之间的时差:

timedelta对象表示两个日期或时间之间的时差:

from datetime import datetime, datet1 = date(year = 2018, month = 7, day = 12)
t2 = date(year = 2017, month = 12, day = 23)
t3 = t1 - t2
print("t3 =", t3)t4 = datetime(year = 2018, month = 7, day = 12, hour = 7, minute = 9, second = 33)
t5 = datetime(year = 2019, month = 6, day = 10, hour = 5, minute = 55, second = 13)
t6 = t4 - t5
print("t6 =", t6)print("type of t3 =", type(t3))
print("type of t6 =", type(t6))

运行该程序时,输出为:

在这里插入图片描述

两个timedelta对象之间的时间差:

from datetime import timedeltat1 = timedelta(weeks = 2, days = 5, hours = 1, seconds = 33)
t2 = timedelta(days = 4, hours = 11, minutes = 4, seconds = 54)
t3 = t1 - t2print("t3 =", t3)

运行该程序时,输出为:

在这里插入图片描述

在这里,我们创建了两个timedelta对象t1和t2,它们直接相差的天数被打印在屏幕上

打印负timedelta对象:

from datetime import timedeltat1 = timedelta(seconds = 33)
t2 = timedelta(seconds = 54)
t3 = t1 - t2print("t3 =", t3)
print("t3 =", abs(t3))

运行该程序时,输出为:

在这里插入图片描述

持续时间(以秒为单位):

您可以使用total_seconds()方法获得timedelta对象中的总秒数

from datetime import timedeltat = timedelta(days = 5, hours = 1, seconds = 33, microseconds = 233423)
print("total seconds =", t.total_seconds())

运行该程序时,输出为:

在这里插入图片描述

使用strftime()格式化日期:

strftime()方法是在date、datetime和time类下面定义的。该方法根据给定的日期、日期时间或时间对象创建格式化的字符串。

from datetime import datetime# current date and time
now = datetime.now()t = now.strftime("%H:%M:%S")
print("time:", t)s1 = now.strftime("%m/%d/%Y, %H:%M:%S")
# mm/dd/YY H:M:S format
print("s1:", s1)s2 = now.strftime("%d/%m/%Y, %H:%M:%S")
# dd/mm/YY H:M:S format
print("s2:", s2)

当你运行程序时,输出将类似于:

在这里插入图片描述

这里%Y,%m,%d,%H等都是格式代码。strftime()方法采用一个或多个格式代码,并根据该代码返回格式化的字符串。

在上面的程序中,t,s1和s2是字符串。

  • %Y -年[0001,…,2018,2019,…,9999]

  • %m -月[01,02,…,11,12]

  • %d -天[01,02,…,30,31]

  • %H -小时[00,01,…,22,23]

  • %M -分钟[00,01,…,58,59]

  • %S -秒[00,01,…,58,59]

strptime():

strptime()方法从一个给定的字符串(表示日期和时间)创建一个datetime对象。

from datetime import datetimedate_string = "21 June, 2018"
print("date_string =", date_string)date_object = datetime.strptime(date_string, "%d %B, %Y")
print("date_object =", date_object)

运行该程序时,输出为:

在这里插入图片描述

当前是今年第几天,几月,今天中的第几小时:

import timest = time.localtime()print("今天是今年的第几天:", st.tm_yday)
print("现在是今年的第几个月:", st.tm_mon)
print("现在是今天的第几个小时:", st.tm_hour)

运行该程序时,输出为:

在这里插入图片描述

这篇关于Python武器库开发-常用模块之time模块(十二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

JS常用组件收集

收集了一些平时遇到的前端比较优秀的组件,方便以后开发的时候查找!!! 函数工具: Lodash 页面固定: stickUp、jQuery.Pin 轮播: unslider、swiper 开关: switch 复选框: icheck 气泡: grumble 隐藏元素: Headroom

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

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

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

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

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

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

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

常用的jdk下载地址

jdk下载地址 安装方式可以看之前的博客: mac安装jdk oracle 版本:https://www.oracle.com/java/technologies/downloads/ Eclipse Temurin版本:https://adoptium.net/zh-CN/temurin/releases/ 阿里版本: github:https://github.com/