Как установить переменную как "сегодняшнюю" дату в Python/Pandas
Я пытаюсь установить переменную равной сегодняшней дате.
Я просмотрел это и нашел связанную статью:
Установите сегодняшнюю дату как значение по умолчанию в модели
Однако это не особенно отвечало на мой вопрос.
Я использовал предложенный вариант:
dt.date.today
Но после
import datetime as dt
date = dt.date.today
print date
<built-in method today of type object at 0x000000001E2658B0>
Df['Date'] = date
Я не получил то, что действительно хотел, что в качестве чистого формата даты сегодняшней даты... в месяц/день/год.
Как я могу создать переменную сегодняшнего дня, чтобы я мог ввести эту переменную в DataFrame?
Ответы
Ответ 1
Вы упомянули, что используете Pandas (в своем названии). Если это так, нет необходимости использовать внешнюю библиотеку, вы можете просто использовать to_datetime
>>> pandas.to_datetime('today')
Timestamp('2015-10-14 00:00:00')
Это всегда будет возвращаться сегодня в полночь, независимо от фактического времени (но угадайте, что будет делать аргумент now
).
Ответ 2
Если вам нужна строка mm/dd/yyyy
вместо объекта datetime
, вы можете использовать strftime
(время форматирования строки):
>>> dt.datetime.today().strftime("%m/%d/%Y")
# ^ note parentheses
'02/12/2014'
Ответ 3
Использование pandas: pd.Timestamp("today").strftime("%m/%d/%Y")
Ответ 4
У меня такая же проблема, поэтому я попробовал так много вещей
но, наконец, это решение.
import time
print (time.strftime("%d/%m/%Y"))
Ответ 5
Простое решение в Python3 +:
import time
todaysdate = time.strftime("%d/%m/%Y")
#with '.' isntead of '/'
todaysdate = time.strftime("%d.%m.%Y")
Ответ 6
import datetime
def today_date():
'''
utils:
get the datetime of today
'''
date=datetime.datetime.now().date()
date=pd.to_datetime(date)
return date
Df['Date'] = today_date()
это можно безопасно использовать в pandas кадрах данных.
Ответ 7
Вы также можете посмотреть на pandas.Timestamp
, который включает такие методы, как .now
и .today
. В отличие от pandas.to_datetime('now')
, pandas.Timestamp.now()
умолчанию не будет иметь UTC:
import pandas as pd
pd.Timestamp.now() # will return California time
# Timestamp('2018-12-19 09:17:07.693648')
pd.to_datetime('now') # will return UTC time
# Timestamp('2018-12-19 17:17:08')