Datetime là một mô-đun cho phép xử lý ngày, giờ và datetimes (tất cả trong số đó là kiểu dữ liệu). Điều này có nghĩa là datetime
là cả mô-đun cấp cao nhất cũng như là một loại trong mô-đun đó. Điều này là khó hiểu.
Lỗi của bạn có thể dựa trên việc đặt tên gây nhầm lẫn của mô-đun và bạn hoặc mô-đun bạn đang sử dụng đã nhập.
>>> import datetime
>>> datetime
<module 'datetime' from '/usr/lib/python2.6/lib-dynload/datetime.so'>
>>> datetime.datetime(2001,5,1)
datetime.datetime(2001, 5, 1, 0, 0)
Nhưng, nếu bạn nhập datetime.datetime:
>>> from datetime import datetime
>>> datetime
<type 'datetime.datetime'>
>>> datetime.datetime(2001,5,1) # You shouldn't expect this to work
# as you imported the type, not the module
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: type object 'datetime.datetime' has no attribute 'datetime'
>>> datetime(2001,5,1)
datetime.datetime(2001, 5, 1, 0, 0)
tôi nghi ngờ bạn hoặc một trong các module bạn đang sử dụng đã nhập khẩu như thế này: from datetime import datetime
.
Cảm ơn bạn! Nó hoạt động hoàn hảo –
Cảm ơn bạn! Đó là một điều nhỏ để bỏ bê nhưng một điều khó tìm. – Prateek
@jozzas câu trả lời tuyệt vời. Tôi đã có một vấn đề với timedelta đã được giải quyết với giải pháp của bạn. Txs. –