栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 软件开发 > 后端开发 > Python

Python基础入门篇【41】--python中的时间包

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python基础入门篇【41】--python中的时间包

文章目录
  • python中的时间包
    • datetime时间包
      • 获取当前时间
      • 获取时间间隔
      • 时间对象转时间字符串
      • 时间字符串转时间对象
      • 扩展--时间格式字符
      • 时间转换成时间戳
        • 时间戳--timestamp
        • 将时间对象转换成时间戳
        • 将时间戳转换成时间对象
    • time时间包
      • 获取当前时间戳
      • 获取本地时间
      • 暂停函数sleep
      • time中的strftime和strptime

python中的时间包 datetime时间包
  • datetime包是日期与时间的结合体(date&time)
  • 可以获取当前时间
  • 可以获取时间间隔
  • 可以将时间对象转换成时间字符串
  • 可以将字符串转成时间类型

导入datetime有两种方式:导入datetime模块或直接导入datetime包:

from datetime import datetime

import datetime

获取当前时间

使用方法:

datetime.now()   # 导入模块后调用方法
datetime.datetime.now  # 直接导入包后调用方法

注意,返回的是一个对象,一个类的实例化对象

获取时间间隔

单使用获取时间间隔并没有什么用处,要配合获取当前时间来使用

使用方法:

from datetime import datetime
from datetime import timedelta  # timedelta是一个函数

timeobj = timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, week=0)
# 后面的参数分别代表天,秒,毫秒,微秒,分钟,小时,周;对应的值传入整型
# 返回的是一个间隔时间段的对象,一个类的实例化对象

例子:

获取前一天的当前时间:

时间对象转时间字符串

上面讲到的获取到的当前时间和时间间隔都是一个对象,而时间对象是无法进行传输的,我们需要将时间对象转换成字符串

方法:

时间对象.strftime(format)
# format为想要转成的格式,例如format为'%Y-%m-%d'时,会转换成‘年-月-日’格式

例子:

时间字符串转时间对象

时间字符串是无法进行加减法的,想要进行加减法,还需要将时间字符串转换成时间对象

方法:

from datetime import datetime

str_date = '2022-08-08 11:06:06'
date_obj = datetime.strptime(str_date, '%Y-%m-%d %H:%M:%S')
# datetime.striptime()返回的是个时间对象

例子:

注意:strptime(str, '%Y-%m-%d %H:%M:%S')左边字符串的格式一定要和右边参数的格式一致,否则会报错:

扩展–时间格式字符

时间格式字符除了上面提到的%Y %m %d %H %M %S外,代表年、月、日、时、分、秒,还有其他的字符,只不过不常用:

字符描述
%I一天中的第几个小时(12小时制,01~12),%H是24小时制
%f毫秒
%a简化的星期,如星期三Wed
%A完整的星期,如星期三Wednesday
%b简化的月份,如二月Feb
%B完整的月份,如二月February
%c本地日期和时间,如Wed Feb 5 10:14:28 2022
%p显示的上午还是下午,AM/PM
%j一年中的第几天
%U一年中的星期数
时间转换成时间戳 时间戳–timestamp

什么是时间戳?

时间戳就是从1970年1月1日00时00分00秒至今的总毫秒(秒)数

时间戳是float类型

将时间对象转换成时间戳

方法:

from datetime import datetime

datetime.timestamp(datetime.now())  # 返回当前时间戳
将时间戳转换成时间对象

方法:

from datetime import datetime

datetime.fromtimestamp(timestamp)  # 返回时间对象

例子:

time时间包 获取当前时间戳

方法:

import time
time.time()
# 返回秒级别的时间戳(浮点类型)
# 如果想获取毫秒级别的时间戳,只需要用秒级时间戳*1000即可
获取本地时间

方法:

import time
time.localtime(timestamp)
# 传入一个时间戳,也可以不传,如果不传会默认当前时间
# 返回一个对象(time.struct_time),对象的属性有时间信息

time.localtime()返回的对象属性里有年月日时分秒等信息:

属性描述取值范围
tm_year四位数年2020
tm_mon1~12
tm_mday1~31
tm_hour0~23
tm_min0~59
tm_sec0~61
tm_wday一周的第几天0~6(0是周一)
tm_yday一年的第几日1~366
tm_isdst夏时令-1,0,1是否时夏时令

例子:

暂停函数sleep

用法:

import time
time.sleep(second)  # 传入希望暂停的秒数

time中的strftime和strptime

strftime使用方法:

import time

time.strftime(format, t)
# format--格式化时间标准; t--time.localtime()返回的时间对象

strptime使用方法:

import time

time.strptime(time_str, format)
# time_str--时间格式的字符串; format--与time_str一致的格式化时间标准

思考:datetime和time都功能类似,为什么还需要两个包呢?

答:在工作过程中,datetime常用于对日期的处理,而time常用于对时间的处理。

转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/1037365.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号