Python 日期和时间

Python 为日期时间模块提供了真实的日期和时间。在现实应用中,我们需要处理日期和时间。Python 使我们能够安排我们的 Python 脚本在特定的时间运行。

在 Python 中,日期不是数据类型,但是我们可以通过导入以日期时间、时间和日历命名的模块来处理日期对象。

在教程的这一部分,我们将讨论如何在 Python 中使用日期和时间对象。

日期时间类别分为六个主要类别。

  • date -它由年、月和日作为属性组成。

  • time -这是一个完美的时间,假设每天都有精确的 246060 秒。它有小时、分钟、秒、微秒和 tzinfo 属性。

  • datetime -它是日期和时间的分组,以及年、月、日、小时、分钟、秒、微秒和 tzinfo 属性。

  • timedelta- 它表示两个日期、时间或日期时间实例到微秒分辨率之间的差异。

  • tzinfo -提供时区信息对象。

  • datetime- 包含在新版 Python 中。它是实现 tzinfo 抽象基类的类。

滴答声

在 Python 中,时间瞬间是从 1970 年 1 月 1 日上午 12 点开始计算的。模块时间的函数 time() 返回自 1970 年 1 月 1 日上午 12 点以来总数。刻度可以看作是测量时间的最小单位。

考虑以下示例

import time;
#prints the number of ticks spent since 12 AM, 1st January 1970
print(time.time())

输出:

1585928913.6519969

如何获取当前时间?

时间模块的 localtime()函数用于获取当前的时间元组。考虑下面的例子。

import time;  

#returns a time tuple

print(time.localtime(time.time()))

输出:

time.struct_time(tm_year=2020, tm_mon=4, tm_mday=3, tm_hour=21, tm_min=21, tm_sec=40, tm_wday=4, tm_yday=94, tm_isdst=0)

时间元组

时间被视为 9 个数字的元组。让我们看看时间元组的成员。

Python时间元组

获取格式化时间

可以使用时间模块的 asctime() 功能格式化时间。它返回正在传递的时间元组的格式化时间。

import time  
#returns the formatted time

print(time.asctime(time.localtime(time.time())))

输出:

Tue Dec 18 15:31:39 2018

Python 睡眠时间

时间模块的 sleep() 方法用于在给定的时间内停止脚本的执行。输出将延迟作为浮点提供的秒数。

考虑下面的例子。

import time
for i in range(0,5):
print(i)
#Each element will be printed after 1 second
time.sleep(1)

输出:

0
1
2
3
4

日期时间模块

日期时间模块使我们能够创建自定义日期对象,对日期执行各种操作,如比较等。

要使用日期作为日期对象,我们必须将datetime模块导入 python 源代码。

考虑以下示例来获取当前时间的日期时间对象表示。

import datetime
#returns the current datetime object
print(datetime.datetime.now())

输出:

2020-04-04 13:18:35.252578

创建日期对象

我们可以在日期时间构造器中绕过需要创建日期对象的日期来创建日期对象。

考虑下面的例子。

import datetime  
#returns the datetime object for the specified date
print(datetime.datetime(2020,04,04))

输出:

2020-04-04 00:00:00

我们还可以指定创建 datetime 对象的时间和日期。考虑下面的例子。

import datetime

#returns the datetime object for the specified time

print(datetime.datetime(2020,4,4,1,26,40))

输出:

2020-04-04 01:26:40

在上面的代码中,我们以顺序的方式传入了 datetime() 函数年、月、日、小时、分钟和毫秒属性。

两个日期的比较

我们可以使用比较运算符如>、> =、

考虑下面的例子。

from datetime import datetime as dt  
#Compares the time. If the time is in between 8AM and 4PM, then it prints working hours otherwise it prints fun hours
if dt(dt.now().year,dt.now().month,dt.now().day,8)<dt.now()<dt(dt.now().year,dt.now().month,dt.now().day,16):
print("Working hours....")
else:
print("fun hours")

输出:

fun hours

日历模块

Python 提供了一个日历对象,其中包含各种使用日历的方法。

考虑以下示例来打印 2018 年最后一个月的日历。

import calendar;  
cal = calendar.month(2020,3)
#printing the calendar of December 2018
print(cal)

输出:

March 2020
Mo Tu We Th Fr Sa Su
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

打印全年日历

日历模块的 prcal()方法用于打印全年的日历。要打印日历的年份必须传递到此方法中。

import calendar  
#printing the calendar of the year 2019
s = calendar.prcal(2020)

输出:

Python Date and time

原文:https://www.javatpoint.com/python-date