Python-时间

笔记

目录

一、获取当前时间

1.Datetime 模块      

2.时间戳与time模块

二、字符串和时间转换

三、时间运算


一、获取当前时间

1.Datetime 模块      

        Python标准库中包含了datetime模块,该模块提供了非常强大的功能来处理日期和时间。 datatime模块是在time模块的基础上做了封装,提供了更多更好用的类,常用的类有date、time、datetime、timedelta、tzinfo

        date类主要用于处理年、月、日的日期数据;time类主要用于处理时、分、秒的时间数据;datetime类是date类和time类的综合使用,可以处理年、月、日、时、分、秒;timedelta类主要用于做时间的加减运算;tzinfo类是时区类

方法(属性) 说明
today() 返回当地的日期
fromtimestamp(timestamp) 根据给定的时间戳,返回本地日期
min date所能表示的最小日期
max date所能表示的最大日期

        此外,常用的类方法包括today、year、month、day、strftime和strptime等。这些函数可以捕获具体的日期数据(例如:年、月、日)、进行日期和时间的加减运算、创建特定形式的日期字符串以及根据日期字符串创建datetime对象

        [例]请利用Python获取当前日期

        关键技术:可以利用datetime模块date类的today()方法将当前日期保存在变量中。 通过使用date.today(),可以创建一个date类对象,其中包含了日期元素,如年、月、日,但不包含时间元素,比如时、分、秒。最后,可以使用year、month和day来捕获具体的日期元素

import datetime as dt
ct=dt.date.today()
print(ct)
print(ct.year)
print(ct.month)
print(ct.day)

        [例]请利用Python获取当前日期和时间

        关键技术:可以利用datetime模块datetime类的today()方法将当前日期和时间保存在变量中。 通过使用datetime.today(),可以创建一个datetime类对象,其中包含了日期元素和时间元素,如年、月、日、时、分、秒。最后,可以使用year、month和day来捕获具体的日期元素,通过hour、minute和second来捕获具体的时间元素

import datetime as dt
ct=dt.datetime.today()
print(ct)
print(ct.year)
print(ct.month)
print(ct.day)
print(ct.hour)
print(ct.minute)
print(ct.second)

        [例]请利用Python获取当前时间 

        关键技术:可以利用datetime模块datetime类的now()方法将当前日期和时间保存在变量中

import datetime as dt
ct=dt.datetime.now()
ct

2.时间戳与time模块

        时间戳是以格林威治时间1970年01月01日00时00分00秒为基准计算所经过时间的秒数,是一个浮点数。Python的内置模块time和datetime都可以对时间格式数据进行转换,如时间戳和时间字符串的相互转换

        [例]请利用Python将当前系统时间加盖时间戳,进行转换

        关键技术:可以采用Python的time模块提供的mktime()函数,对数据加盖时间戳。 可以通过time.time()获取到当前的时间,默认是一个时间戳浮点数。也可以通过time.localtime()获取到当前时间的元组,里面分别对应了当前时间的年、月、日、时、分、秒、一周的第几天(周一是0,0-6)、一年的第几天(从1开始,1-366)、夏时令(是夏时令1,不是0,未知-1)

import time
print(time.localtime())

        [例]请利用Python将时间戳数据转换成系统时间

        关键技术:可以利用time模块的strftime()函数可以将时间戳转换成系统时间

import time
ct=time.strftime(('%Y-%m-%d %H:%M:%S'),time.localtime(2653967697))
ct

二、字符串和时间转换

        [例]请利用Python将字符串'2022-01-15'转换成时间类型的数据格式

        关键技术:在可以用strptime函数将日期字符串转换为datetime数据类型,可以用Pandas的to_datetime()函数将日期字符串转换为datetime数据类型。to_datetime()函数转化后的时间是精准到时分秒精度的 

import datetime as dt
datestr='2023-08-28'

#strptime
dt.datetime.strptime(datestr,'%Y-%m-%d')

#to_datetime
pd.to_datetime(datestr)

三、时间运算

        [例]给定两个时间类型的数据,计算两个时间的不同之处

        关键技术:利用datetime将时间类型数据进行转换,然后利用减法运算计算时间的不同之处,默认输出结果转换为用(“天”,“秒”)表达

import datetime as dt
delta = dt.datetime(2022,1,16)-dt.datetime(2021,1,1,9,15)
print(delta)

        如果要将输出结果转换以“天”为单位,此时应该如何处理

        关键技术:针对上例中的delta变量,利用delta.days可以将输出结果转换以“天”为单位 

import datetime as dt
delta = dt.datetime(2022,1,16)-dt.datetime(2021,1,1,9,15)
delta.days

        如果要将输出结果转换以“秒”为单位,此时应该如何处理?

        关键技术:针对上例中的delta变量,利用delta.seconds可以将输出结果转换以“秒”为单位

import datetime as dt
delta = dt.datetime(2022,1,16)-dt.datetime(2021,1,1,9,15)
delta.seconds

你可能感兴趣的:(python,开发语言)