Làm việc với datetime

Python Trung cấp cho Tài chính

Kennedy Behrman

Data Engineer, Author, Founder

Thuộc tính của datetime

now.year
now.month
now.day
2019
11
13
now.hour
now.minute
now.second
22
34
56
Python Trung cấp cho Tài chính

So sánh datetime

bằng ==

nhỏ hơn <

lớn hơn >

Python Trung cấp cho Tài chính

So sánh datetime

from datetime import datetime
asian_crisis = datetime(1997, 7, 2)
world_mini_crash = datetime(1997, 10, 27)
asian_crisis > world_mini_crash
False
asian_crisis < world_mini_crash
True
Python Trung cấp cho Tài chính

So sánh datetime

asian_crisis = datetime(1997, 7, 2)
world_mini_crash = datetime(1997, 10, 27)
text = "10/27/1997"
format_str =  "%m/%d/%Y"
sell_date = datetime.strptime(text, format_str)
sell_date == world_mini_crash
True
Python Trung cấp cho Tài chính

Hiệu giữa các datetime

  • So sánh bằng <, >, hoặc ==.
  • Phép trừ trả về đối tượng timedelta.
  • Thuộc tính timedelta: weeks, days, minutes, seconds, microseconds
Python Trung cấp cho Tài chính

Hiệu giữa các datetime

delta = world_mini_crash - asian_crisis
type(delta)
datetime.timedelta
delta.days
117
Python Trung cấp cho Tài chính

Tạo datetime tương đối

dt
datetime.datetime(2019, 1, 14, 0, 0)
datetime(dt.year, dt.month, dt.day - 7)
datetime.datetime(2019, 1, 7, 0, 0)
datetime(dt.year, dt.month, dt.day - 15)
ValueError                                Traceback (most recent call last)
<ipython-input-28-804001f45cdb> in <module>()
-> 1 datetime(dt.year, dt.month, dt.day - 15)
ValueError: day is out of range for month
Python Trung cấp cho Tài chính

Tạo datetime tương đối

delta = world_mini_crash - asian_crisis
type(delta)
datetime.timedelta
Python Trung cấp cho Tài chính

Tạo datetime tương đối

from datetime import timedelta
offset = timedelta(weeks = 1)
offset
datetime.timedelta(7)
dt - offset
datetime.datetime(2019, 1, 7, 0, 0)
Python Trung cấp cho Tài chính

Tạo datetime tương đối

offset = timedelta(days=16)
dt - offset
datetime.datetime(2018, 12, 29, 0, 0)
cur_week = last_week + timedelta(weeks=1)
# Do some work with date
# set last week variable to cur week and repeat
last_week = cur_week
source_dt = event_dt - timedelta(weeks=4)
# Use source datetime to look up market factors
Python Trung cấp cho Tài chính

Ayo berlatih!

Python Trung cấp cho Tài chính

Preparing Video For Download...