Python中提供了多个用于对日期和时间进行操作的内置模块:time模块、datetime模块和calendar模块。其中time模块是通过调用C库实现的,所以有些方法在某些平台上可能无法调用,但是其提供的大部分接口与C标准库time.h基本一致。time模块相比,datetime模块提供的接口更直观、易用,功能也更加强大。
在你的 Python 应用程序中,你可能想设置时间,以增加诸如时间戳的功能,检查用户活动的时间,等等。
在 Python 中帮助你处理日期和时间的模块之一是 datetime。
使用 datetime 模块,你可以得到当前的日期和时间,或者某个特定时区的当前日期和时间。
在这篇文章中,我将向你展示如何在 Python 中用 datetime 模块获得当前时间。我还将告诉你如何获得世界上任何一个时区的当前时间。
如何用 datetime 模块获取当前时间
首先要做的是像这样导入 datetime 模块。
from datetime import datetime
接下来你可以做的是使用datetime模块中的 datetime.now() 函数来快速获得当前日期和时间。
from datetime import datetime
currentDateAndTime = datetime.now()
print("现在的时间", currentDateAndTime)
# Output: 现在的时间 2022-03-28 10:48:07.677951
要获得当前时间,你可以使用 strftime() 方法,并向其传递代表小时、分钟和秒的字符串 ”%H:%M:%S”。
这将给你提供 24 小时格式的当前时间。
from datetime import datetime
currentDateAndTime = datetime.now()
print("现在的时间", currentDateAndTime)
# Output: 现在的时间 2022-03-28 10:49:39.197498
currentTime = currentDateAndTime.strftime("%H:%M:%S")
print("现在的时刻", currentTime)
# 现在的时刻 10:49:39
datetime.now() 函数属性
datetime.now 函数有几个属性,你可以通过它们获得当前日期的年、月、周、日、小时、分钟和秒。
下面的代码片段将所有的属性值打印到终端。
from datetime import datetime
currentDateAndTime = datetime.now()
print("年 ", currentDateAndTime.year) # Output: 年 2022
print("月 ", currentDateAndTime.month) # Output: 月 3
print("日 ", currentDateAndTime.day) # Output: 日 28
print("小时 ", currentDateAndTime.hour) # Output: 小时 10
print("分钟 ", currentDateAndTime.minute) # Output: 分钟 51
print("秒 ", currentDateAndTime.second) # Output: 秒 13
如何用datetime获取一个时区的当前时间
你可以通过使用 datetime 模块和另一个叫 pytz 的模块来获得某个特定时区的当前时间。
你可以像这样从 pip 中安装 pytz 模块: pip install pytz
首先你需要导入 datetime 和 pytz 模块。
from datetime import datetime
import pytz
然后你可以用下面的片段检查所有可用的时区。
from datetime import datetime
import pytz
zones = pytz.all_timezones
print(zones)
# Output: ['Africa/Abidjan', 'Africa/Accra', ...] 所有的可用时区
在下面的代码片断中,我能够得到纽约的时间。
from datetime import datetime
import pytz
newYorkTz = pytz.timezone("America/New_York")
timeInNewYork = datetime.now(newYorkTz)
currentTimeInNewYork = timeInNewYork.strftime("%H:%M:%S")
print("纽约时间:", currentTimeInNewYork)
# Output: 纽约时间: 22:57:53
我是如何获得纽约的当前时间的呢?
我引入了 pytz 模块的 pytztimezone() 方法,将纽约的确切时区作为一个字符串传入其中,并将其分配给一个名为 newYorkTz的变量(代表纽约时区)。
为了获得纽约的当前时间,我使用了 datetime 模块中的 datetime.now() 函数,并将我创建的用于存储纽约时区的变量传入其中。
为了最终得到 24 小时格式的纽约当前时间,我对 timeInNewYork 变量使用了 strftime() 方法,并将其存储在一个名为currentTimeInNewYork 的变量中,这样我就可以将其打印到终端。
总结
如本文所示,datetime 模块在处理时间和日期方面非常方便,随后可以得到你所在地区的当前时间。
当与你可以从 pip 安装的 pytz 模块结合时,你也可以用它来获得世界上任何一个时区的当前时间。
以上就是“Python教程:10分钟吃透Python Datetime,轻松掌控时间!”的详细内容,想要了解更多Python教程欢迎持续关注编程学习网。
扫码二维码 获取免费视频学习资料
- 本文固定链接: http://phpxs.com/post/11805/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料
查 看2022高级编程视频教程免费获取