2009-08-17 24 views
6

Tôi đang cố gắng chuyển đổi đối tượng datetime thành dấu thời gian UNIX (tốt nhất là bằng mili giây, mặc dù tôi không bận tâm đến và không có).'datetime.time' không có 'mktime'

mktime có vẻ là phương pháp thường được nó, tuy nhiên tôi tiếp tục nhận được lỗi:

AttributeError: loại đối tượng 'datetime.time' không có thuộc tính 'mktime'.

Có ai cho tôi biết tôi đang làm gì sai không? Tôi cứ đi vòng quanh!

+1

Mẫu mã, vui lòng ... – Kieron

+0

Đối tượng ngày giờ chuẩn. Tôi đang sử dụng mã này: .. time.mktime (datetimeobject.timetuple()) .. Cũng như nhiều biến thể. – Federer

+0

@malcmcmul: Vui lòng không bình luận về câu hỏi của bạn. Vui lòng chỉnh sửa câu hỏi. –

Trả lời

20

Tôi nghĩ bạn đã làm

from datetime import datetime, time 

thay vì

import time 
from datetime import datetime 

để các đối tượng được gọi là time là thực sự đến từ các mô-đun datetime, không phải là mô-đun thời gian.

+0

cảm ơn rất nhiều. chỉ là một câu hỏi khác. làm cách nào để tôi bao gồm mili giây vào dấu thời gian trả về? – Federer

+2

'time.mktime (datetimeobject.timetuple()) + datetimeobject.microsecond/1000000.0' –

1

Thực ra, ngay cả khi sử dụng câu trả lời ở trên, tôi vẫn nhận được thông báo lỗi tương tự.

Tôi đã giải quyết vấn đề của tôi sử dụng

>>>>from time import mktime as mktime 
>>>>today = mktime(2012, 12, 21, 0, 0, 0, 0, 0, 0) 

Tôi không biết tại sao, nhưng, nó chỉ làm việc bằng cách sử dụng bí danh (như mktime) ... ai đó có thể cho tôi biết lý do ...

+0

bạn nên đăng bài đó dưới dạng câu hỏi mới. – mtk

Các vấn đề liên quan