Python编程基础:时间time模块 python time_ns

liftword2周前 (12-16)技术文章15

time模块提供了与时间相关的函数,本文介绍time模块的常用函数。

获取时间戳:time()函数

时间戳指自1970年1月1日0点0分0秒以来的总秒数(浮点数)。

import time

print(time.time()) #结果:1690988829.7923753

获取本地时间:localtime()函数

localtime([seconds])函数可以获取指定时间戳seconds的本地时间,如未指定参数,则返回当前的本地时间。

localtime()函数返回值是struct_time对象,该对象可以通过索引和属性名访问值。 存在以下值:

索引

属性

0

tm_year

(年份,如2023)

1

tm_mon

range [1, 12]

2

tm_mday

range [1, 31]

3

tm_hour

range [0, 23]

4

tm_min

range [0, 59]

5

tm_sec

range [0, 61]

6

tm_wday

range [0, 6] ,周一为 0

7

tm_yday

range [1, 366]

8

tm_isdst

0, 1 或 -1;如下所示

N/A

tm_zone

时区名称的缩写

N/A

tm_gmtoff

以秒为单位的UTC以东偏离

import time

print(time.localtime(1690989115.0581512)) #结果:time.struct_time(tm_year=2023, tm_mon=8, tm_mday=2, tm_hour=23, tm_min=11, tm_sec=55, tm_wday=2, tm_yday=214, tm_isdst=0)

st = time.localtime()
print(st) #结果:time.struct_time(tm_year=2023, tm_mon=8, tm_mday=2, tm_hour=23, tm_min=20, tm_sec=44, tm_wday=2, tm_yday=214, tm_isdst=0)

print(st.tm_year) #结果:2023
print(st.tm_mon) #结果:8
print(st.tm_mday) #结果:3

格式化显示时间:strftime()函数

strftime(format[, t])可以自定义格式化显示时间,format是格式参数,t是可选参数,如果提供则格式化该时间,否则格式化当前时间。

以下指令可以嵌入 format 字符串中。它们显示时没有可选的字段宽度和精度规范,并被 strftime() 结果中的指示字符替换:

指令

含意

备注

%a

本地化的缩写星期中每日的名称。


%A

本地化的星期中每日的完整名称。


%b

本地化的月缩写名称。


%B

本地化的月完整名称。


%c

本地化的适当日期和时间表示。


%d

十进制数 [01,31] 表示的月中日。


%H

十进制数 [00,23] 表示的小时(24小时制)。


%I

十进制数 [01,12] 表示的小时(12小时制)。


%j

十进制数 [001,366] 表示的年中日。


%m

十进制数 [01,12] 表示的月。


%M

十进制数 [00,59] 表示的分钟。


%p

本地化的 AM 或 PM 。

(1)

%S

十进制数 [00,61] 表示的秒。

(2)

%U

十进制数 [00,53] 表示的一年中的周数(星期日作为一周的第一天)。 在第一个星期日之前的新年中的所有日子都被认为是在第 0 周。

(3)

%w

十进制数 [0(星期日),6] 表示的周中日。


%W

十进制数 [00,53] 表示的一年中的周数(星期一作为一周的第一天)。 在第一个星期一之前的新年中的所有日子被认为是在第 0 周。

(3)

%x

本地化的适当日期表示。


%X

本地化的适当时间表示。


%y

十进制数 [00,99] 表示的没有世纪的年份。


%Y

十进制数表示的带世纪的年份。


%z

时区偏移以格式 +HHMM 或 -HHMM 形式的 UTC/GMT 的正或负时差指示,其中H表示十进制小时数字,M表示小数分钟数字 [-23:59, +23:59] 。1


%Z

时区名称(如果不存在时区,则不包含字符)。已弃用。 1


%%

字面的 '%' 字符。


注释:

(1)当与 strptime() 函数一起使用时,如果使用 %I 指令来解析小时, %p 指令只影响输出小时字段。

(2)范围真的是 0 到 61 ;值 60 在表示 leap seconds 的时间戳中有效,并且由于历史原因支持值 61 。

(3)当与 strptime() 函数一起使用时, %U 和 %W 仅用于指定星期几和年份的计算。

import time
print(time.strftime('%Y-%m-%d %H:%M:%S'))
#结果:2023-08-02 23:32:58

格式字符串转为struct_time对象:strptime()函数

strptime(string[, format])可以把格式显示的时间字符串转为struct_time对象。

format 参数使用与 strftime() 相同的指令。

import time
print(time.strptime('2023-08-02 23:32:58', '%Y-%m-%d %H:%M:%S'))
#结果:time.struct_time(tm_year=2023, tm_mon=8, tm_mday=2, tm_hour=23, tm_min=32, tm_sec=58, tm_wday=2, tm_yday=214, tm_isdst=-1)

暂停程序执行:sleep()函数

使用sleep(secs)可以暂停程序执行,等待secs秒后继续执行。secs是浮点数。

import time
for i in range(5):
    print(time.strftime('%H:%M:%S'), i)
    time.sleep(1)
'''结果:
23:45:22 0
23:45:23 1
23:45:24 2
23:45:25 3
23:45:26 4
'''

相关文章

python 日期、时间处理,各种日期时间格式/字符串?

阅读原文模块函数说明''' date 日期对象,常用的属性有year,month,day time 时间对象,常用的属性有hour,minute,second,毫秒...

python时间操作,最全封装,各种年月日加减、转换、获取

哈喽,我给大家封装了时间操作的工具,包含 年、月、日、时、分、秒增加指定时间,数字转换成时间,获取指定时间的年、月、日、时、分、秒,以及计算年月日的差值等,全网最全附源码,复制后即可引用。先看几个演...

让时间变得简单易用:深入了解 Python 的 dateutil 库

在 Python 编程的世界里,处理日期和时间的数据是一个常见却复杂的任务。谁不想让这一过程更加简单呢?今天,我们要聊的就是一个超级实用的库——dateutil。它能帮助你轻松应对各种与时间相关的问题...

python字符串\数值型变量转换日期格式

在程序设计中经常会遇到字符串向日期格式转换的问题,有一种直接有效的办法。最终得到的date变量即是date格式,不显示时间(00:00:00)。import datetime ####### 导入da...

Python编程:计算当前日期是一年中的第几天

前言正常人的思路通常是先判断闰年和平年,然后将每个月的天数相加再加上输入的天数。在平年中,有7个月每月都有31天,这几个月分别是1月、3月、5月、7月、8月、10月和12月。我们可以定义两个数组,一个...

十二、Python 日期时间datetime模块详细使用

1、datetime模块:日期包含年、月、日、小时、分钟、秒和微秒。datetime 模块有许多方法可以返回有关日期对象的信息。一般操作就是获取时间是哪年哪月什么时间端,处于那个时区范围,几个操作时间...