Tôi có một tệp CSV dumpfile từ bản sao lưu IPD Blackberry, được tạo bằng cách sử dụng IPDDump. Các/lần chuỗi ngày ở đây giống như thế này (nơi EST
là một múi giờ Úc):Python strptime() và múi giờ?
Tue Jun 22 07:46:22 EST 2010
tôi cần để có thể phân tích ngày này bằng Python. Lúc đầu, tôi đã cố gắng sử dụng chức năng strptime()
từ datettime.
>>> datetime.datetime.strptime('Tue Jun 22 12:10:20 2010 EST', '%a %b %d %H:%M:%S %Y %Z')
Tuy nhiên, đối với một số lý do, đối tượng datetime
mà trở lại dường như không có bất kỳ tzinfo
liên kết với nó.
Tôi đã đọc trên this page dường như datetime.strptime
âm thầm loại tzinfo
, tuy nhiên, tôi đã kiểm tra tài liệu và tôi không thể tìm thấy bất kỳ điều gì với hiệu ứng đó được ghi lại here.
Tôi đã có thể lấy ngày được phân tích cú pháp bằng thư viện Python của bên thứ ba, dateutil, tuy nhiên tôi vẫn tò mò về cách sử dụng strptime()
không chính xác trong? Có cách nào để có được strptime()
để chơi độc đáo với múi giờ không?
Bạn không thể ... chuyển đổi tất cả các ngày thành GMT? – Robus
@Robus: Hmm, tôi đã hy vọng làm điều đó - nhưng tôi đã giả định rằng strftime/datetime bằng cách nào đó có thể làm điều đó?Dù bằng cách nào, tôi cần phải lưu trữ/phân tích cú pháp thực tế rằng các lịch biểu trong múi giờ EST hoặc bất kỳ múi giờ nào xảy ra với tôi. Tập lệnh cần có khả năng phân tích cú pháp thời gian biểu chung với thông tin múi giờ (ví dụ: ETC có thể là bất kỳ múi giờ nào khác). – victorhooi
EST cũng là từ viết tắt múi giờ của Hoa Kỳ. (Tương tự như vậy, BST là cả tiếng Anh và một dấu thời gian của Brazil.) Những từ viết tắt như vậy vốn chỉ mơ hồ. Thay vào đó, hãy sử dụng bù trừ tương đối so với UTC/GMT. (Nếu bạn cần hỗ trợ chữ viết tắt, bạn cần phải phụ thuộc vào ngôn ngữ lập bản đồ và đó là lỗ chuột lộn xộn.) –