如何在Python中获取和修改日期和时间?
时间无疑是生活各个方面的最关键因素。因此,记录和跟踪此组件变得非常重要。在Python中,可以通过其内置库来跟踪日期和时间。这篇有关Python中日期和时间的文章将帮助您了解如何使用时间和日期时间模块查找和修改日期和时间。
用Python处理日期和时间的模块
Python提供了时间 和日期 时间模块,可帮助您轻松获取和修改日期和时间。让我们详细了解其中的每一个。
时间模块:
该模块包含使用时间执行各种操作所需的所有与时间相关的功能。它还允许您访问出于各种目的所需的几种时钟。
内置功能:
查看下表,该表描述了时间模块的一些重要内置函数。
Function | Description | 描述 |
time() |
Returns the number of seconds that have passed since epoch | 返回自纪元以来经过的秒数 |
ctime() |
Returns the current date and time by taking elapsed seconds as its parameter | 通过将经过的秒数作为参数返回当前日期和时间 |
sleep() |
Stops execution of a thread for the given duration | 在给定的时间内停止执行线程 |
time.struct_time Class |
Functions either take this class as an argument or return it as output | 函数将此类作为参数或将其作为输出返回 |
localtime() |
Takes seconds passed since epoch as a parameter and returns the date and time in time.struct_time format | 从纪元开始经过的秒数作为参数,并以time.struct_time格式返回日期和时间 |
gmtime() |
Similar to localtime(), returns time.struct_time in UTC format | 与localtime()类似,以UTC格式返回time.struct_time |
mktime() |
The inverse of localtime(). Takes a tuple containing 9 parameters and returns the seconds passed since epoch pas output | localtime()的逆函数。接受包含9个参数的元组,并返回自epoch pas输出以来经过的秒数 |
asctime() |
Takes a tuple containing 9 parameters and returns a string representing the same | 接收包含9个参数的元组,并返回表示相同参数的字符串 |
strftime() |
Takes a tuple containing 9 parameters and returns a string representing the same depending on the format code used | 取一个包含9个参数的元组,并根据所使用的格式代码返回一个表示相同参数的字符串 |
strptime() |
Parses a string and returns it in time.struct_time format | 解析字符串并以time.struct_time格式返回 |
格式代码:
在继续使用示例解释每个功能之前,请查看所有合法格式代码:
Code | Description | Example |
%a |
Weekday (short version) |
Mon |
%A |
Weekday (full version) |
Monday |
%b |
Month (short version) |
Aug |
%B |
Month (full version) |
August |
%c |
Local date and time version |
Tue Aug 23 1:31:40 2019 |
%d |
Depicts the day of the month (01-31) |
07 |
%f |
Microseconds |
000000-999999 |
%H |
Hour (00-23) |
15 |
%I |
Hour (00-11) |
3 |
%j |
Day of the year |
235 |
%m |
Month Number (01-12) |
07 |
%M |
Minutes (00-59) |
45 |
%p |
AM / PM |
AM |
%S |
Seconds (00-59) |
57 |
%U |
Week number of the year starting from Sunday (00-53) |
34 |
%w |
Weekday number of the week |
Monday (1) |
%W |
Week number of the year starting from Monday (00-53) |
34 |
%x |
Local date |
06/07/19 |
%X |
Local time |
12:30:45 |
%y |
Year (short version) |
19 |
%Y |
Year (full version) |
2019 |
%z |
UTC offset |
+0100 |
%Z |
Timezone |
CST |
%% |
% Character |
% |
struct_time类具有以下属性:
Attribute | Value |
tm_year |
0000, .., 2019, …, 9999 |
tm_mon |
1-12 |
tm_mday |
1-31 |
tm_hour |
0-23 |
tm_min |
0-59 |
tm_sec |
0-61 |
tm_wday |
0-6 (Monday is 0) |
tm_yday |
1-366 |
tm_isdst |
0, 1, -1 (daylight savings time, -1 when unknown) |
现在让我们举一些例子来实现时间 模块。
使用time在Python中查找日期和时间:
使用上表中描述的内置函数和格式代码,您可以轻松地在Python中获取日期和时间。请注意,与所有模块一样,在使用任何内置功能之前,也需要导入时间模块。
例:
import time
#time
a=time.time() #total seconds since epoch
print("Seconds since epoch :",a,end='n----------n')
#ctime
print("Current date and time:")
print(time.ctime(a),end='n----------n')
#sleep
time.sleep(1) #execution will be delayed by one second
#localtime
print("Local time :")
print(time.localtime(a),end='n----------n')
#gmtime
print("Local time in UTC format :")
print(time.gmtime(a),end='n-----------n')
#mktime
b=(2019,8,6,10,40,34,1,218,0)
print("Current Time in seconds :")
print( time.mktime(b),end='n----------n')
#asctime
print("Current Time in local format :")
print( time.asctime(b),end='n----------n')
#strftime
c = time.localtime() # get struct_time
d = time.strftime("%m/%d/%Y, %H:%M:%S", c)
print("String representing date and time:")
print(d,end='n----------n')
#strptime
print("time.strptime parses string and returns it in struct_time format :n")
e = "06 AUGUST, 2019"
f = time.strptime(e, "%d %B, %Y")
print(f)
输出:
自纪元以来的秒数:1565070251.7134922
-------
当前日期和时间:
2019年8月6日星期二11:14:11
-------
当地时间:
time.struct_time(tm_year = 2019,tm_mon = 8,tm_mday = 6,tm_hour = 11, tm_min = 14,tm_sec = 11,tm_wday = 1,tm_yday = 218,tm_isdst = 0)
———-
UTC格式的本地时间:
time.struct_time(tm_year = 2019,tm_mon = 8,tm_mday = 6,tm_hour = 5, tm_min = 44,tm_sec = 11,tm_wday = 1,tm_yday = 218,tm_isdst的= 0)
----
以秒为单位的当前时间:
1565068234.0
———-
以本地格式表示的当前时间:
Tue Aug 6 10:40:34 2019
———-
表示日期和时间的字符串:
08 / 06/2019,11 :14: 12
———-
time.strptime解析字符串并以struct_time格式返回:
time.struct_time(tm_year = 2019,tm_mon = 8,tm_mday = 6,tm_hour = 0,tm_min = 0,tm_sec = 0,tm_wday = 1,tm_yday = 218,tm_isdst = -1)
datetime模块:
与时间模块类似,datetime模块还包含所有必需的方法,这些方法对于处理日期和时间至关重要。
内置功能:
Function | Description | 描述 |
datetime() |
Datetime constructor | 日期时间构造函数 |
datetime.today() |
Returns current local date and time | 返回当前的本地日期和时间 |
datetime.now() |
Returns current local date and time | 返回当前的本地日期和时间 |
date() |
Takes year, month and day as parameter and creates the corresponding date | 以年,月和日为参数并创建相应的日期 |
time() |
Takes hour, min, sec, microseconds and tzinfo as parameter and creates the corresponding date | 以小时,分钟,秒,微秒和tzinfo为参数,并创建相应的日期 |
date.fromtimestamp() |
Converts seconds to return the corresponding date and time | 转换秒以返回相应的日期和时间 |
timedelta() |
It is the difference between different dates or times (Duration) | 它是不同日期或时间之间的差异(持续时间) |
使用datetime在Python中查找日期和时间:
现在,让我们尝试使用datetime模块实现这些功能以在Python中查找日期和时间。
例:
import datetime
#datetime constructor
print("Datetime constructor:n")
print(datetime.datetime(2019,5,3,8,45,30,234),end='n----------n')
#today
print("The current date and time using today :n")
print(datetime.datetime.today(),end='n----------n')
#now
print("The current date and time using today :n")
print(datetime.datetime.now(),end='n----------n')
#date
print("Setting date :n")
print(datetime.date(2019,11,7),end='n----------n')
#time
print("Setting time :n")
print(datetime.time(6,30,23),end='n----------n')
#date.fromtimestamp
print("Converting seconds to date and time:n")
print(datetime.date.fromtimestamp(23456789),end='n----------n')
#timedelta
b1=datetime.timedelta(days=30, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=4, weeks=8)
b2=datetime.timedelta(days=3, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=4, weeks=8)
b3=b2-b1
print(type(b3))
print("The resultant duration = ",b3,end='n----------n')
#attributes
a=datetime.datetime.now() #1
print(a)
print("The year is :",a.year)
print("Hours :",a.hour)
输出:
日期时间构造函数:
2019-05-03 08:45:30.000234
———-
今天使用的当前日期和时间:
2019-08-06 13:09:56.651691
———-
今天使用的当前日期和时间:
2019-08-06 13:09:56.651691
———-
设置日期:
2019-11-07
———-
凝结时间:
06:30:23
———-
将秒转换为日期和时间:
1970-09-29
———-
< class'datetime.timedelta '>
结果持续时间= -27天,0:00:00
———-
2019-08-06 13:09:56
. 653694年是:2019
小时:13
这使我们到了“ Python中的日期和时间”的文章结尾。希望您已经清楚地了解了所有内容。
确保尽可能多地练习并恢复经验。
- 点赞
- 收藏
- 关注作者
评论(0)