2011-07-25 13 views
11

Tôi có tzinfo định nghĩa lớp con cụ thể như sau:Chèn một tzinfo vào datetime

from datetime import datetime, timedelta, tzinfo 

class ManilaTime(tzinfo): 
    def utcoffset(self, dt): 
    return timedelta(hours=8) 

    def tzname(self, dt): 
    return "Manila" 

tôi có được một chuỗi ngày và muốn biến nó thành một đối tượng múi giờ-aware datetime. Tôi thích sử dụng các phương pháp sau đây:

def transform_date(date_string, tzinfo): 
    fmt = '%Y-%m-%d' 
    # Where do I insert tzinfo? 
    date = datetime.strptime(date_string, fmt) 
    return date 

Có một số cách tôi có thể chèn tzinfo vào đối tượng datetime theo cách sau đây?

manila = ManilaTime() 
date = transform_date('2001-01-01', manila) 

Trả lời

16
def transform_date(date_string, tzinfo): 
    fmt = '%Y-%m-%d' 
    date = datetime.strptime(date_string, fmt).replace(tzinfo=tzinfo) 
    return date 
Các vấn đề liên quan