Python에서 날짜를 datetime으로 변환
내장 변환 방법이 있습니까?date
에 대해서datetime
예를 들어, Python을 사용하는 경우datetime
그 날짜의 한밤중에?반대의 변환은 간단합니다.datetime
가 있다.date()
방법.
꼭 수동으로 전화해야 하나요?datetime(d.year, d.month, d.day)
?
를 사용할 수 있습니다.당분간은,datetime.time
오브젝트가 자정에 초기화되었습니다.
from datetime import date
from datetime import datetime
dt = datetime.combine(date.today(), datetime.min.time())
몇 가지 방법이 있지만, 당신이 말한 것(그리고 싫어하는 것)이 가장 읽기 쉬운 것이라고 생각합니다.
>>> t=datetime.date.today()
>>> datetime.datetime.fromordinal(t.toordinal())
datetime.datetime(2009, 12, 20, 0, 0)
>>> datetime.datetime(t.year, t.month, t.day)
datetime.datetime(2009, 12, 20, 0, 0)
>>> datetime.datetime(*t.timetuple()[:-4])
datetime.datetime(2009, 12, 20, 0, 0)
기타 등등 - 하지만 기본적으로는 모두 정보 추출에 의존합니다.date
대상화 및 적절한 ctor 또는 클래스 함수에 다시 플라우터datetime
.
인정된 답변은 맞지만, 이 명령어를 사용하는 것은 피하고 싶습니다.datetime.min.time()
그게 정확히 뭘 하는지는 잘 모르겠어요뻔히 보이면 더 큰 힘이 될 거야저도 같은 생각을 하고 있습니다.timetuple
방법 및 주문에 대한 의존도.
내 생각에, 독자에게 매우 친숙함을 의존하지 않고 이것을 할 수 있는 가장 읽기 쉽고, 명확한 방법datetime
모듈 API:
from datetime import date, datetime
today = date.today()
today_with_time = datetime(
year=today.year,
month=today.month,
day=today.day,
)
그게 내가 생각하는 "명백한 것이 암묵적인 것보다 낫다"는 것이다.
를 사용할 수 있습니다.date.timetuple()
메서드 및 언팩 연산자*
.
args = d.timetuple()[:6]
datetime.datetime(*args)
2016년 현재 가장 깨끗한 솔루션은 팬더 타임스탬프에 의해 제공된다고 생각합니다.
from datetime import date
import pandas as pd
d = date.today()
pd.Timestamp(d)
타임스탬프는 판다의 날짜/시간과 동일하며 대부분의 경우 팬더와 상호 교환이 가능합니다.확인:
from datetime import datetime
isinstance(pd.Timestamp(d), datetime)
하지만 만약 당신이 정말로 바닐라 데이타임을 원한다면, 당신은 여전히 다음을 할 수 있습니다.
pd.Timestamp(d).to_datetime()
타임 스탬프는 시간대를 다룰 때 데이터 시간보다 훨씬 강력합니다.사실, 타임스탬프는 너무 강력해서 너무 서툴러서 안타깝지만...
날짜에서 아직 언급되지 않은 날짜로 변환하는 방법 중 하나는 다음과 같습니다.
from datetime import date, datetime
d = date.today()
datetime.strptime(d.strftime('%Y%m%d'), '%Y%m%d')
를 사용할 수도 있습니다.
date = datetime.utcnow().date()
dt = datetime.fromisoformat(date.isoformat())
print(dt)
datetime.datetime(표준, 11, 15, 0, 0)
easy_date를 사용하여 쉽게 만들 수 있습니다.
import date_converter
my_datetime = date_converter.date_to_datetime(my_date)
datetime(d.year, d.month, d.day)을 수동으로 호출해야 합니까?
아니, 전화하는 게 낫지
date_to_datetime(dt)
한 번쯤은 구현할 수 있습니다.utils/time.py
프로젝트:
from typing import Optional
from datetime import date, datetime
def date_to_datetime(
dt: date,
hour: Optional[int] = 0,
minute: Optional[int] = 0,
second: Optional[int] = 0) -> datetime:
return datetime(dt.year, dt.month, dt.day, hour, minute, second)
만들기 위해서dt
시간대 대응 datetime(Django 시간대 util 사용):
from django.utils import timezone
timezone.now().replace(*(*dt.timetuple()[:6], 0))
다음 클래스를 사용할 수 있습니다.
import time
import datetime
class TimingClass():
def __init__(self):
self.YEAR = datetime.date.today().year
self.MONTH = datetime.date.today().month
self.DATE = datetime.date.today().day
self.HOUR = datetime.datetime.now().hour
self.MINUTE = datetime.datetime.now().minute
self.SECONDS = datetime.datetime.now().second
self.TODAY = datetime.date.today()
self.YESTERDAY = datetime.datetime.strftime( (self.TODAY - datetime.timedelta(days = 1)) , '%Y-%m-%d')
self.TOMORROW = datetime.datetime.strftime( (self.TODAY + datetime.timedelta(days = 1)) , '%Y-%m-%d')
self.TODAY_datetime = datetime.datetime.combine(datetime.date.today(), datetime.datetime.min.time())
빨리 필요한 게 있으면datetime_object.date()
는 datetime 객체의 날짜를 나타냅니다.
저는 Python에 처음 와봐요.그러나 이 코드는 지정된 입력을 날짜/시간으로 변환하는 데 도움이 되었습니다.여기 암호가 있습니다.내가 틀렸다면 고쳐 주세요.
import sys
from datetime import datetime
from time import mktime, strptime
user_date = '02/15/1989'
if user_date is not None:
user_date = datetime.strptime(user_date,"%m/%d/%Y")
else:
user_date = datetime.now()
print user_date
언급URL : https://stackoverflow.com/questions/1937622/convert-date-to-datetime-in-python
'programing' 카테고리의 다른 글
JavaScript에서 랜덤 문자열/문자 생성 (0) | 2022.10.12 |
---|---|
고정폭 정수형(예: uint8_t)을 사용하지 않는 이유가 있습니까? (0) | 2022.10.12 |
아나콘다 대 미니콘다 (0) | 2022.10.12 |
배열에서 가장 높은 키/인덱스 검색 (0) | 2022.10.12 |
MySQL 선택에서 삭제하는 방법 (0) | 2022.10.12 |