Как узнать текущее время в Python - PullRequest
2388 голосов
/ 06 января 2009

Какой модуль / метод используется для получения текущего времени?

Ответы [ 33 ]

31 голосов
/ 25 июня 2013

.isoformat() есть в документации, но еще не здесь (это очень похоже на ответ @Ray Vega):

>>> import datetime
>>> datetime.datetime.now().isoformat()
'2013-06-24T20:35:55.982000'
29 голосов
/ 19 августа 2016

Почему бы не спросить США. Военно-морская обсерватория , официальный хронометрист ВМС США?

import requests
from lxml import html

page = requests.get('http://tycho.usno.navy.mil/cgi-bin/timer.pl')
tree = html.fromstring(page.content)
print(tree.xpath('//html//body//h3//pre/text()')[1])

Если вы живете в округе Колумбия (как и я), задержка может быть не слишком плохой ...

20 голосов
/ 22 сентября 2017

Использование панд для получения текущего времени, что-то вроде решения проблемы:

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
19 голосов
/ 09 января 2015

Вот что я закончил:

>>>from time import strftime
>>>strftime("%m/%d/%Y %H:%M")
01/09/2015 13:11

Кроме того, эта таблица является необходимой ссылкой для выбора соответствующих кодов формата, чтобы получить дату, отформатированную так, как вы этого хотите (из документации Python «datetime» здесь ).

strftime format code table

15 голосов
/ 09 апреля 2017
import datetime
date_time = datetime.datetime.now()

date = date_time.date()  # Gives the date
time = date_time.time()  # Gives the time

print date.year, date.month, date.day
print time.hour, time.minute, time.second, time.microsecond

Do dir(date) или любые переменные, включая пакет. Вы можете получить все атрибуты и методы, связанные с переменной.

14 голосов
/ 23 декабря 2014

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
12 голосов
/ 06 февраля 2015

Вы можете использовать модуль time:

import time
print time.strftime("%d/%m/%Y")

>>> 06/02/2015

Использование капитала Y дает полный год, а использование y даст 06/02/15.

Вы также можете использовать следующий код, чтобы увеличить время:

time.strftime("%a, %d %b %Y %H:%M:%S")
>>> 'Fri, 06 Feb 2015 17:45:09'
12 голосов
/ 14 ноября 2015

Попробуйте стрелочный модуль от 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'
12 голосов
/ 01 марта 2018

По умолчанию функция now() возвращает выходные данные в формате YYYY-MM-DD HH:MM:SS:MS. Используйте приведенный ниже пример скрипта, чтобы получить текущую дату и время в скрипте Python и распечатать результаты на экране. Создайте файл getDateTime1.py со следующим содержанием.

import datetime

currentDT = datetime.datetime.now()
print (str(currentDT))

Вывод выглядит так:

2018-03-01 17:03:46.759624
12 голосов
/ 07 ноября 2017

если вы уже используете numpy, то можете напрямую использовать numpy.datetime64 () функция.

import numpy as np
str(np.datetime64('now'))

только на дату:

str(np.datetime64('today'))

или, если вы уже используете pandas, вы можете использовать функцию pandas.to_datetime ()

import pandas as pd
str(pd.to_datetime('now'))

или

str(pd.to_datetime('today'))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...