如何获取当前时间?
当前回答
这里有很多复杂的解决方案,初学者可能会感到困惑。我发现这是这个问题最简单的解决方案,因为它只返回所问的当前时间(没有虚饰):
import datetime
time = datetime.datetime.now()
display_time = time.strftime("%H:%M")
print(display_time)
如果您希望返回比当前时间更详细的信息,可以按照其他人的建议进行操作:
import datetime
time = datetime.datetime.now()
print(time)
虽然这种方法写起来更短,但它也会返回当前日期和毫秒,这在简单地返回当前时间时可能不需要。
其他回答
方法1:从系统datetime获取当前日期和时间
datetime模块提供用于操作日期和时间的类。
密码
from datetime import datetime,date
print("Date: "+str(date.today().year)+"-"+str(date.today().month)+"-"+str(date.today().day))
print("Year: "+str(date.today().year))
print("Month: "+str(date.today().month))
print("Day: "+str(date.today().day)+"\n")
print("Time: "+str(datetime.today().hour)+":"+str(datetime.today().minute)+":"+str(datetime.today().second))
print("Hour: "+str(datetime.today().hour))
print("Minute: "+str(datetime.today().minute))
print("Second: "+str(datetime.today().second))
print("MilliSecond: "+str(datetime.today().microsecond))
输出将如下
Date: 2020-4-18
Year: 2020
Month: 4
Day: 18
Time: 19:30:5
Hour: 19
Minute: 30
Second: 5
MilliSecond: 836071
方法2:如果网络可用,则获取当前日期和时间
urllib包帮助我们处理url,即网页。这里我们从网页收集数据http://just-the-time.appspot.com/并使用包日期解析器从网页解析日期时间。
密码
from urllib.request import urlopen
import dateparser
time_url = urlopen(u'http://just-the-time.appspot.com/')
datetime = time_url.read().decode("utf-8", errors="ignore").split(' ')[:-1]
date = datetime[0]
time = datetime[1]
print("Date: "+str(date))
print("Year: "+str(date.split('-')[0]))
print("Month: "+str(date.split('-')[1]))
print("Day: "+str(date.split('-')[2])+'\n')
print("Time: "+str(time))
print("Hour: "+str(time.split(':')[0]))
print("Minute: "+str(time.split(':')[1]))
print("Second: "+str(time.split(':')[2]))
输出将如下
Date: 2020-04-18
Year: 2020
Month: 04
Day: 18
Time: 14:17:10
Hour: 14
Minute: 17
Second: 10
方法3:从机器的本地时间获取当前日期和时间
Python的时间模块提供了一个函数,用于从称为localtime()的历元起经过的秒数获取本地时间。ctime()函数将从epoch开始经过的秒数作为参数,并返回表示本地时间的字符串。
密码
from time import time, ctime
datetime = ctime(time()).split(' ')
print("Date: "+str(datetime[4])+"-"+str(datetime[1])+"-"+str(datetime[2]))
print("Year: "+str(datetime[4]))
print("Month: "+str(datetime[1]))
print("Day: "+str(datetime[2]))
print("Week Day: "+str(datetime[0])+'\n')
print("Time: "+str(datetime[3]))
print("Hour: "+str(datetime[3]).split(':')[0])
print("Minute: "+str(datetime[3]).split(':')[1])
print("Second: "+str(datetime[3]).split(':')[2])
输出将如下
Date: 2020-Apr-18
Year: 2020
Month: Apr
Day: 18
Week Day: Sat
Time: 19:30:20
Hour: 19
Minute: 30
Second: 20
试试这个:-
from datetime import datetime
now = datetime.now()
current_time = now.strftime("%H:%M:%S")
print("Current Time =", current_time)
如果你经常使用panda,你可以使用Timestamp,它相当于Python的Datetime:
In [1]: import pandas as pd
In [2]: pd.Timestamp.now()
Out[2]: Timestamp('2022-06-21 21:52:50.568788')
只是时间:
In [3]: pd.Timestamp.now().strftime("%H:%M:%S")
Out[3]: '21:53:01'
下面是根据您的问题只显示时间的代码:
from datetime import datetime
time= datetime.now()
b = time.strftime("%H:%M:%S")
print(b)
使用datetime.now()获取当前日期和时间。然后使用.strftime获取所需值,即仅时间。
strftime用于检索所需的输出或根据需要更改默认格式。
从中尝试箭头模块http://crsmithdev.com/arrow/:
import arrow
arrow.now()
或UTC版本:
arrow.utcnow()
要更改其输出,请添加.format():
arrow.utcnow().format('YYYY-MM-DD HH:mm:ss ZZ')
对于特定时区:
arrow.now('US/Pacific')
一小时前:
arrow.utcnow().replace(hours=-1)
或者如果你想要要点。
arrow.get('2013-05-11T21:23:58.970460+00:00').humanize()
>>> '2 years ago'