0
点赞
收藏
分享

微信扫一扫

Python时间包time的使用

一叶轻舟okok 2021-09-28 阅读 122

目录

  • 认识时间戳
  • 认识python的time模块与常用方法
  • datetime包生成时间戳与时间戳转时间类型的方法

认识时间戳

  • 1970年1月1日00时00分00秒至今的总毫秒(秒)数
  • timestamp
  • float类型

time模块与他的函数们

  • 时间处理,转换时间格式
  • 生成时间戳函数time
  • 获取本地时间函数localtime
  • localtime对应字段介绍
  • 暂停时间函数sleep
  • time中的strptime和strftime

生成时间戳函数time

  • 导入包:
    • import time
  • 使用方法:
    • time.time()
  • 返回值:
    • 秒级别的浮点类型
  • 举例:
    • 1580878485.4009378

获取本地时间函数localtime

  • 导入包:
    • import time
  • 使用方法:
    • time.localtime(timestamp)
  • 参数介绍∶
    • timestamp :时间戳(可不传)
In [1]: import time

In [2]: t = time.localtime()

In [3]: t
Out[3]: time.struct_time(tm_year=2021, tm_mon=8, tm_mday=21, tm_hour=17, tm_min=55, tm_sec=1, tm_wday=5, tm_yday=233, tm_isdst=0)

localtime对应字段介绍


暂停函数sleep

  • 导入包:
    • import time
  • 使用方法:
    • time.sleep(second)
  • 参数介绍:
    • second :希望程序被暂停的秒数

time中的strftime

  • 导入包∶
    • import time
  • 使用方法:
    • time.strftime(format,t)
  • 参数介绍:
    • format: 格式化规范
    • t : time.localtime对应的时间类型
In [4]: import time

In [5]: str_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

In [6]: str_time
Out[6]: '2021-08-21 18:05:54'

time中的strptime

  • 导入包:
    • import time
  • 使用方法:
    • time.strptime(time_str, format)
  • 参数介绍:
    • time_str:符台时间格式的字符串
    • format: 确保与time_str 一致的格式化标准
In [8]: import time

In [9]: time_obj = time.strptime("2021-08-21", "%Y-%m-%d")

In [10]: time_obj
Out[10]: time.struct_time(tm_year=2021, tm_mon=8, tm_mday=21, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=5, tm_yday=233, tm_isdst=-1)

datetime中生成时间戳函数

  • 导入包:
    • import datetime
  • 使用方法∶
    • now = datetime.datetime.now()
    • datetime.datetime. timestamp(now)
  • 参数介绍:
    • now: datetime时间对象
  • 返回秒级时间戳,浮点型
In [11]: import datetime

In [12]: now = datetime.datetime.now()

In [13]: now_timestamp = datetime.datetime.timestamp(now)

In [14]: now_timestamp
Out[14]: 1629540906.643593

datetime时间戳转时间对象

  • 导入包∶
    • import datetime
  • 使用方法:
    • datetime.datetime.fromtimestamp(timestamp)
  • 参数介绍:
    • timestamp: 时间戳
  • 返回值:
    • datetime的日期对象
In [15]: now_timestamp
Out[15]: 1629540906.643593

In [16]: datetime_obj = datetime.datetime.fromtimestamp(now_timestamp)

In [17]: datetime_obj
Out[17]: datetime.datetime(2021, 8, 21, 18, 15, 6, 643593)

实战

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time     : 2021/8/21 17:56
# @Author   : InsaneLoafer
# @File     : package_time.py

import time
import datetime

now = time.time()
print(now, type(now))

time_obj = time.localtime(now)
print(time_obj, type(time_obj))
time.sleep(2)
print(time.localtime())

before = now - 100000
before_time_obj = time.localtime(before)
print(before_time_obj)

print(time.time() * 1000)  # 返回毫秒级的时间戳

for i in range(10):
    print(i)
    time.sleep(1)

datetime_now = datetime.datetime.now()
datetime_timestamp = datetime.datetime.timestamp(datetime_now)
print('datetime生成的时间戳%s' % datetime_timestamp)

datetime_obj = datetime.datetime.fromtimestamp(datetime_timestamp)
print(datetime_obj)
1629541436.4847474 <class 'float'>
time.struct_time(tm_year=2021, tm_mon=8, tm_mday=21, tm_hour=18, tm_min=23, tm_sec=56, tm_wday=5, tm_yday=233, tm_isdst=0) <class 'time.struct_time'>
time.struct_time(tm_year=2021, tm_mon=8, tm_mday=21, tm_hour=18, tm_min=23, tm_sec=58, tm_wday=5, tm_yday=233, tm_isdst=0)
time.struct_time(tm_year=2021, tm_mon=8, tm_mday=20, tm_hour=14, tm_min=37, tm_sec=16, tm_wday=4, tm_yday=232, tm_isdst=0)
1629541438498.3157
0
1
2
3
4
5
6
7
8
9
datetime生成的时间戳1629541448.593227
2021-08-21 18:24:08.593227

Process finished with exit code 0
举报

相关推荐

0 条评论