在你的 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
模块结合时,你也可以用它来获得世界上任何一个时区的当前时间。
谢谢你阅读本文。如果你觉得这篇文章对你有帮助,欢迎大家点赞、收藏、支持!。
pythontip 出品,Happy Coding!
公众号: 夸克编程