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

Python基础18—Python常用模块(time模块&datetime模块)(2022年)

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

Python基础18—Python常用模块(time模块&datetime模块)(2022年)

文章目录
  • 1. time 模块
    • time常用模块
        • 将时间戳转换为当前时区:time.localtime()
        • 将时间戳转换为UTC时区:time.gmtime()
        • 返回当前时间戳:time.time()
        • 将struct_time转化为时间戳:time.mktime()
        • 线程推迟指定的时间:time.sleep()
        • 格式化时间元组:time.asctime():
        • 格式化时间戳: time.ctime()
        • 时间格式化:time.strftime()
        • 格式化时间转换struct_time:time.strptime()
        • 字符串转时间格式对应表
  • 2. datetime 模块
        • 表示日期的类:datetime.date
        • 本地日期:date.today()
        • 根据给定的时间戳,返回一个date对象: date.fromtimestamp()
        • 返回一周中的第几天: date.weekday() (从0开始计算)
        • 返回一周中的第几天: date.isoweekday() (从1开始计算)
        • 返回自定义格式的时间字符串: date.strftime()
        • 返回当前的datetime日期类型:datetime.now()
        • 把时间戳转为datetime日期:date.fromtimestamp()
        • datetime日期类型的时间运算:timedelta()
        • datetime日期类型的时间替换:replace()


1. time 模块

在Python中,通常有这几种方式来表示时间:

  • 时间戳(timestamp), 表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。例子:1554864776.161901
  • 格式化的时间字符串,比如“2022-10-03 17:54”
  • 元组(struct_time)共九个元素。
0     tm_year(年)                 比如2011
1     tm_mon(月)                  1 - 12
2     tm_mday(日)                 1 - 31
3     tm_hour(时)                 0 - 23
4     tm_min(分)                  0 - 59
5     tm_sec(秒)                  0 - 61
6     tm_wday(weekday)            0 - 6(0表示周日)
7     tm_yday(一年中的第几天)       1 - 366
8     tm_isdst(是否是夏令时)        默认为-1

UTC时间
UTC(Coordinated Universal Time,世界协调时)亦即格林威治天文时间,世界标准时间。在中国为UTC+8,又称东8区。DST(Daylight Saving Time)即夏令时。

time常用模块 将时间戳转换为当前时区:time.localtime()
# time.localtime([secs]):将一个时间戳转换为当前时区的struct_time。secs默认值是当前时间。
import time
print(time.localtime())

将时间戳转换为UTC时区:time.gmtime()
#  time.gmtime([secs]):gmtime()方法是将一个时间戳转换为UTC时区(0时区)的struct_time。
import time
print(time.gmtime())

返回当前时间戳:time.time()
# 返回当前时间戳:time.time()
import time
print(time.time())

将struct_time转化为时间戳:time.mktime()
# 将struct_time转化为时间戳:time.mktime()
import time
print(time.mktime(time.localtime()))

线程推迟指定的时间:time.sleep()
#   线程推迟指定的时间运行,单位为秒
import time
print(time.time())
time.sleep(3)
print(time.time())

格式化时间元组:time.asctime():
# 如果没有参数,将会将time.localtime()作为参数传入。
import time
print(time.asctime())

格式化时间戳: time.ctime()
# 把一个时间戳(按秒计算的浮点数)转化为time.asctime()的形式。如果参数未给或者为None的时候,将会默认time.time()为参数。
import time
print(time.ctime())

时间格式化:time.strftime()
# 把一个代表时间的元组或者struct_time(如由time.localtime()和time.gmtime()返回)转化为格式化的时间字符串。如果t未指定,将传入time.localtime()。
import time
print(time.strftime('%Y-%m-%d %X', time.localtime()))

格式化时间转换struct_time:time.strptime()
# 把一个格式化时间字符串转化为struct_time
import time
print(time.strptime('2022-05-06 11:26','%Y-%m-%d %H:%M'))

字符串转时间格式对应表
符号详情
%a本地(locale)简化星期名称
%A本地完整星期名称
%b本地简化月份名称
%B本地完整月份名称
%c本地相应的日期和时间表示
%d一个月中的第几天(01 - 31)
%H一天中的第几个小时(24小时制,00 - 23)
%I第几个小时(12小时制,01 - 12)
%j一年中的第几天(001 - 366)
%m月份(01 - 12)
%M分钟数(00 - 59)
%p本地am或者pm的相应符
%S秒(01 - 61)
%U一年中的星期数。(00 - 53星期天是一个星期的开始。)第一个星期天之前的所有 天数都放在第0周。
%w一个星期中的第几天(0 - 6,0是星期天)
%W和%U基本相同,不同的是%W以星期一为一个星期的开始。
%x本地相应日期
%X本地相应时间
%y去掉世纪的年份(00 - 99)
%Y完整的年份
%Z时区的名字(如果不存在为空字符)
%%‘%’字符
2. datetime 模块 表示日期的类:datetime.date
import datetime
print(datetime.date(2022,5,6))

本地日期:date.today()
# 返回一个当前本地日期的date类型的对象
import datetime
print(datetime.date.today())

根据给定的时间戳,返回一个date对象: date.fromtimestamp()
# 根据给定的时间戳,返回一个date对象

import datetime
import time
print(datetime.date.fromtimestamp(time.time()))

返回一周中的第几天: date.weekday() (从0开始计算)
# 参数必须是一个date类型的对象,返回该日期是一周中的第几天。返回值是一个整型。星期一,返回0;星期二,返回1。。。
import datetime

print(datetime.date.weekday(datetime.date.today()))

返回一周中的第几天: date.isoweekday() (从1开始计算)
# 返回weekday中的星期几,星期一,返回1;星期二,返回2;以此类推。
import datetime

print(datetime.date.isoweekday(datetime.date.today()))

返回自定义格式的时间字符串: date.strftime()
返回自定义格式的时间字符串。
import datetime

print(datetime.date.today().strftime("%Y-%m-%d %H:%M:%S"))

返回当前的datetime日期类型:datetime.now()
import time
import datetime
d=datetime.datetime.now()
print(d.timestamp())
print(d.today())
print(d.year)
print(d.timetuple())

把时间戳转为datetime日期:date.fromtimestamp()
import time
import datetime
print(datetime.date.fromtimestamp(time.time()))

datetime日期类型的时间运算:timedelta()
import time
import datetime
print( datetime.datetime.now() + datetime.timedelta(4)) #当前时间 +4天)
print( datetime.datetime.now() + datetime.timedelta(hours=4)) #当前时间+4小时)

datetime日期类型的时间替换:replace()
import time
import datetime
d=datetime.datetime.now()
print(d.replace(year=2999,month=11,day=30))

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

版权所有 (c)2021-2022 MSHXW.COM

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