पायथन के time
मॉड्यूल के साथ आप माइक्रोसेकंड नहीं प्राप्त कर सकते हैं %f
।
जो अभी भी time
केवल मॉड्यूल के साथ जाना चाहते हैं , उनके लिए यहां एक समाधान है:
now = time.time()
mlsec = repr(now).split('.')[1][:3]
print time.strftime("%Y-%m-%d %H:%M:%S.{} %Z".format(mlsec), time.localtime(now))
आपको 2017-01-16 16: 42: 34.625 ईईटी जैसा कुछ मिलना चाहिए (हां, मैं मिलीसेकंड का उपयोग करता हूं क्योंकि यह काफी पर्याप्त है)।
कोड को विवरण में तोड़ने के लिए, नीचे दिए गए कोड को पायथन कंसोल में चिपकाएँ:
import time
# Get current timestamp
now = time.time()
# Debug now
now
print now
type(now)
# Debug strf time
struct_now = time.localtime(now)
print struct_now
type(struct_now)
# Print nicely formatted date
print time.strftime("%Y-%m-%d %H:%M:%S %Z", struct_now)
# Get miliseconds
mlsec = repr(now).split('.')[1][:3]
print mlsec
# Get your required timestamp string
timestamp = time.strftime("%Y-%m-%d %H:%M:%S.{} %Z".format(mlsec), struct_now)
print timestamp
स्पष्टीकरण उद्देश्यों के लिए, मैंने अपना पायथन 2.7.12 परिणाम यहां चिपकाएं:
>>> import time
>>> # get current timestamp
... now = time.time()
>>> # debug now
... now
1484578293.519106
>>> print now
1484578293.52
>>> type(now)
<type 'float'>
>>> # debug strf time
... struct_now = time.localtime(now)
>>> print struct_now
time.struct_time(tm_year=2017, tm_mon=1, tm_mday=16, tm_hour=16, tm_min=51, tm_sec=33, tm_wday=0, tm_yday=16, tm_isdst=0)
>>> type(struct_now)
<type 'time.struct_time'>
>>> # print nicely formatted date
... print time.strftime("%Y-%m-%d %H:%M:%S %Z", struct_now)
2017-01-16 16:51:33 EET
>>> # get miliseconds
... mlsec = repr(now).split('.')[1][:3]
>>> print mlsec
519
>>> # get your required timestamp string
... timestamp = time.strftime("%Y-%m-%d %H:%M:%S.{} %Z".format(mlsec), struct_now)
>>> print timestamp
2017-01-16 16:51:33.519 EET
>>>
%z