2010-07-06 42 views
32

now() mang lại cho tôiTước giây trong datetime python

datetime.datetime(2010, 7, 6, 5, 27, 23, 662390) 

Làm thế nào để tôi nhận được chỉ datetime.datetime(2010, 7, 6, 5, 27, 0, 0) (đối tượng datetime), nơi tất cả mọi thứ sau phút là zero?

Trả lời

12

Bạn có thể sử dụng datetime.replace để có được một đối tượng datetime mới mà không có giây và micro:

the_time = datetime.now() 
the_time = the_time.replace(second=0, microsecond=0) 
+6

hoặc 'the_time = datetime.now(). Thay thế (giây = 0, micro giây = 0)' – tzot

9

Tôi biết đó là câu hỏi khá cũ, nhưng tôi đã không tìm thấy xung quanh bất kỳ câu trả lời thực sự hoàn chỉnh cho đến nay.

Không cần tạo đối tượng ngày giờ đầu tiên và sau đó thao tác nó.

dt = datetime.now(). Replace (thứ hai = 0, micro = 0)

sẽ trả lại đối tượng mong muốn

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