首页 > 编程语言 >【python日期和时间处理】time模块基本使用

【python日期和时间处理】time模块基本使用

时间:2024-10-12 17:11:35浏览次数:10  
标签:python timestamp 元组 tm 时间 模块 time Out

1. time模块中三种时间格式

  1. 时间戳
    time模块获取各种精度的时间戳
import time
timestamp = time.time()
timestamp_s = int(time.time())  # s精度
timestamp_ms = int(time.time() * 1000)  # ms精度
timestamp_us = int(time.time() * 1000_000)  # μs精度
timestamp_ns = time.time_ns()  # ns精度
print(timestamp)
print(timestamp_s)
print(timestamp_ms)
print(timestamp_us)
print(timestamp_ns)

执行结果:

1672829205.6756904  # s
1672829205  # s
1672829205675  # ms
1672829205675690  # μs
1672829205675690400  # ns
  1. 格式化时间字符串
    如"2023-01-03 17:18:00"

  2. 时间元组

# 获取当前时间元组的两种方式
time.localtime()
Out[21]: time.struct_time(tm_year=2023, tm_mon=1, tm_mday=4, tm_hour=18, tm_min=42, tm_sec=48, tm_wday=2, tm_yday=4, tm_isdst=0)
time.gmtime()
Out[24]: time.struct_time(tm_year=2023, tm_mon=1, tm_mday=4, tm_hour=10, tm_min=43, tm_sec=58, tm_wday=2, tm_yday=4, tm_isdst=0)

2. 三种时间格式相互转化

在这里插入图片描述

2.1 时间戳转时间元组及格式化时间字符串

  1. time.localtime(secs)——将时间戳转换为本地时间
time.localtime(1672824240)
Out[6]: time.struct_time(tm_year=2023, tm_mon=1, tm_mday=4, tm_hour=17, tm_min=24, tm_sec=0, tm_wday=2, tm_yday=4, tm_isdst=0)
  1. time.gmtime(secs)——将时间戳转换为格林威治时间
time.gmtime(1672824240)
Out[5]: time.struct_time(tm_year=2023, tm_mon=1, tm_mday=4, tm_hour=9, tm_min=24, tm_sec=0, tm_wday=2, tm_yday=4, tm_isdst=0)
  1. time.ctime(secs)——将时间戳转成格式化时间字符串
time.ctime(1672824240)
Out[4]: 'Wed Jan  4 17:24:00 2023'

注意

  • 北京时间比utc和gmt时间要快8个小时,即北京时间下午17点的时候,对应的是utc和gmt时间的早上9点
  • 以上api传入的时间戳必须是秒级精度的时间戳

2.2 时间元组转其他

  1. time.mktime()——将时间元组转成秒级精度的时间戳
time.mktime(time.localtime())
Out[19]: 1672825929.0
  1. time.strftime(format, p_tuple)——将时间元组转成格式化时间字符串
p_tuple = time.localtime()
p_tuple
Out[8]: time.struct_time(tm_year=2023, tm_mon=1, tm_mday=4, tm_hour=18, tm_min=17, tm_sec=6, tm_wday=2, tm_yday=4, tm_isdst=0)
time.strftime("%Y-%m-%d %H:%M:%S", p_tuple)
Out[11]: '2023-01-04 18:17:06'
  1. time.asctime(p_tuple)——将时间元组转成成固定格式的时间字符串(%a %b %d %H %M %S %Y)
p_tuple = time.localtime()
p_tuple
Out[13]: time.struct_time(tm_year=2023, tm_mon=1, tm_mday=4, tm_hour=18, tm_min=25, tm_sec=6, tm_wday=2, tm_yday=4, tm_isdst=0)
time.asctime(p_tuple)
Out[14]: 'Wed Jan  4 18:25:06 2023'

2.3 格式化时间字符串转时间元组(在time模块中,格式化时间字符串只能直接转成时间元组)

  1. time.strptime(string, format)——将字符串(str)解析(p)成时间元组(time)
time_str = "2022-01-04 18:27:00"
time.strptime(time_str, "%Y-%m-%d %H:%M:%S")
Out[16]: time.struct_time(tm_year=2022, tm_mon=1, tm_mday=4, tm_hour=18, tm_min=27, tm_sec=0, tm_wday=1, tm_yday=4, tm_isdst=-1)

标签:python,timestamp,元组,tm,时间,模块,time,Out
From: https://www.cnblogs.com/berlin-fly/p/18460926

相关文章

  • python __new__和__init__的区别
    简介__new__和__init__都是Python中的特殊方法,它们在对象生命周期中起到不同的作用。用法1、__new__方法:__new__是一个静态方法,用于创建一个新的对象实例。当你调用一个类时,__new__方法是第一个被调用的方法。它的主要任务是分配内存空间,并返回一个新创建的对象实例。通常情况......
  • python 实现工厂类方法
    #工厂类方法1,这些类的实例方法名相同classFruit(object):def__init__(self):passdefprint_color(self):pass#工厂类方法2classApple(Fruit):def__init__(self):passdefprint_color(self):print("applei......
  • 一文了解Python反射机制(很详细)
    https://blog.csdn.net/weixin_40025666/article/details/134456717 https://www.cnblogs.com/mengdie1978/p/17425581.html 一、反射的概念python的反射机制,核心就是利用字符串去已存在的模块中找到指定的属性或方法,找到方法后自动执行——基于字符串的事件驱动。二、熟悉......
  • 一文弄懂 Python os.walk(),文件处理和目录遍历
    ......
  • python redis使用教程
    文章目录安装Redispython安装redis库使用Python连接Redis使用Redis实现缓存Redis中的常用缓存操作Redis缓存策略发布与订阅事务安装RedisRedisWindows最新安装教程(2024.10.10)python安装redis库pipinstallredisE:\Redis-x64-3.2.......
  • Python cachetools常用缓存算法汇总
    文章目录cachetools介绍缓存操作设置数据生存时间(TTL)自定义缓存策略缓存装饰器缓存清理cachetools超过缓存数量maxsizecachetools使用示例cachetools介绍cachetools:是一个Python第三方库,提供了多种缓存算法的实现。缓存是一种用于临时存储计算结果的技术,以......
  • python延时效果print逐个打印字符
    我想让python打印类似“正在加载。。。”,把每个句号逐个打印出来,并且它们之间的打印间隔睡眠时间0.5秒间隔实现方法:#!/bin/envpython#-*-coding:utf-8-*-importsysimporttimedefslow(msg,text):print(msg,end='')foriintext:print(i,end=''......
  • python中_init_.py 到底有啥用?
     1.__init__.py是个啥?__init__.py,这个文件名就是用来“初始化”的。在Python里,它主要用于标识一个目录是一个“包(Package)”。在项目里新建了一个文件夹,要让它成为一个可供导入的模块包,最简单的办法就是在里面加一个__init__.py。比如,咱们有个项目结构如下:my_project/......
  • Python中语法糖
    什么是语法糖?语法糖指简化语法,代码的基本逻辑没改变。语法糖代码示例squares_dict={}forxinrange(10):squares_dict[x]=x**2 列表推导简单的方式生成列表语法糖:squares_dict={x:x**2forxinrange(10)}输出:[0,1,4,9,......
  • 核密度估计 python代码
    确实,我提供的示例代码中有一些需要修正的地方。让我们逐一解决这些问题,并提供正确的核密度估计(KDE)的Python代码。使用SciPy进行核密度估计importnumpyasnpfromscipy.statsimportgaussian_kdeimportmatplotlib.pyplotasplt#生成一些随机数据data=np.random.no......