如何获取当前时间?
当前回答
如果您需要时区感知解决方案。我喜欢使用以下5行代码来获取当前时间。
from datetime import datetime
import pytz
# Specify the timezone
my_time_zone = pytz.timezone('Asia/Singapore')
# Pass the timezone to datetime.now() function
my_time = datetime.now(my_time_zone)
# Convert the type `my_time` to string with '%Y-%m-%d %H:%M:%S' format.
current_time = my_time.strftime('%Y-%m-%d %H:%M:%S') # current_time would be something like 2023-01-23 14:09:48
您可以使用pytz.all_timezones查找所有时区的列表。
%Y-%m-%d%H:%m:%S中符号的含义可以在geeksfgeeks Python strftime()函数中找到
其他回答
这里有很多复杂的解决方案,初学者可能会感到困惑。我发现这是这个问题最简单的解决方案,因为它只返回所问的当前时间(没有虚饰):
import datetime
time = datetime.datetime.now()
display_time = time.strftime("%H:%M")
print(display_time)
如果您希望返回比当前时间更详细的信息,可以按照其他人的建议进行操作:
import datetime
time = datetime.datetime.now()
print(time)
虽然这种方法写起来更短,但它也会返回当前日期和毫秒,这在简单地返回当前时间时可能不需要。
datetime.now()将当前时间作为一个天真的datetime对象返回,该对象表示本地时区中的时间。该值可能不明确,例如,在DST过渡期间(“回落”)。为避免歧义,应使用UTC时区:
from datetime import datetime
utc_time = datetime.utcnow()
print(utc_time) # -> 2014-12-22 22:48:59.916417
或者一个带有相应时区信息的时区感知对象(Python 3.2+):
from datetime import datetime, timezone
now = datetime.now(timezone.utc).astimezone()
print(now) # -> 2014-12-23 01:49:25.837541+03:00
您可以使用此函数获取时间(遗憾的是,它没有显示AM或PM):
def gettime():
from datetime import datetime
return ((str(datetime.now())).split(' ')[1]).split('.')[0]
要获取稍后要合并的小时、分钟、秒和毫秒,可以使用以下函数:
小时:
def gethour():
from datetime import datetime
return (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[0]
分钟:
def getminute():
from datetime import datetime
return (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[1]
第二:
def getsecond():
from datetime import datetime
return (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[2]
毫秒:
def getmillisecond():
from datetime import datetime
return (str(datetime.now())).split('.')[1]
import datetime
date_time = str(datetime.datetime.now()).split()
date,time = date_time
date将打印日期,time将打印时间。
使用熊猫来获取当前的时间,有点过分了眼前的问题:
import pandas as pd
print(pd.datetime.now())
print(pd.datetime.now().date())
print(pd.datetime.now().year)
print(pd.datetime.now().month)
print(pd.datetime.now().day)
print(pd.datetime.now().hour)
print(pd.datetime.now().minute)
print(pd.datetime.now().second)
print(pd.datetime.now().microsecond)
输出:
2017-09-22 12:44:56.092642
2017-09-22
2017
9
22
12
44
56
92693