15 मिनट पहले के बराबर डेटटाइम कैसे बनाएं?


जवाबों:


232

आयात डेटाटाइम और फिर मैजिक टाइमडेल्टा सामान:

In [63]: datetime.datetime.now()
Out[63]: datetime.datetime(2010, 12, 27, 14, 39, 19, 700401)

In [64]: datetime.datetime.now() - datetime.timedelta(minutes=15)
Out[64]: datetime.datetime(2010, 12, 27, 14, 24, 21, 684435)

1
नायब, पायथन 3 में आपको now()ऑफसेट-भोले और ऑफसेट-अवगत datetime.datetime.now(datetime.timezone.utc)
डेटाेटाइम को

1
@ नोर्नगॉन, जो यहां लागू नहीं है; यह मायने नहीं रखता है कि क्या डेटाटाइम ऑब्जेक्ट जागरूक या भोली है, एक टाइमडेलटा काम को घटाए बिना।
मार्टिन पीटर्स


11

यह बस क्या करना है:

datetime.datetime.now() - datetime.timedelta(minutes = 15)

timedeltas को विशेष रूप से आपको datetimes में डेल्टास (अंतर) को घटाने या जोड़ने की अनुमति देने के लिए डिज़ाइन किया गया है ।


7
from datetime import timedelta    
datetime.datetime.now() - datetime.timedelta(0, 900)

Actually 900 is in seconds. Which is equal to 15 minutes. `15*60 = 900`

आपका आयात कोड से मेल नहीं खाता; आप आयात करते हैं timedeltaलेकिन फिर datetimeविशेषताओं का उपयोग करते हैं। या तो मॉड्यूल आयात करें, या प्रकार जोड़ें।
मार्टिन पीटर्स

7

यदि आप अधिक उदाहरण देखना चाहते हैं तो मुझे मिनटों के साथ-साथ वर्षों और घंटों के लिए दो तरीके प्रदान करने हैं:

import datetime
print(datetime.datetime.now())
print(datetime.datetime.now() - datetime.timedelta(minutes = 15))
print(datetime.datetime.now() + datetime.timedelta(minutes = -15))
print(datetime.timedelta(hours = 5))
print(datetime.datetime.now() + datetime.timedelta(days = 3))
print(datetime.datetime.now() + datetime.timedelta(days = -9))
print(datetime.datetime.now() - datetime.timedelta(days = 9))

मुझे निम्नलिखित परिणाम मिले:

2016-06-03 16:04:03.706615
2016-06-03 15:49:03.706622
2016-06-03 15:49:03.706642
5:00:00
2016-06-06 16:04:03.706665
2016-05-25 16:04:03.706676
2016-05-25 16:04:03.706687
2016-06-03
16:04:03.706716


4

datetime.datetime.now() - datetime.timedelta(0, 15 * 60)

timedeltaएक "समय में परिवर्तन" है। पहले पैरामीटर के रूप में दिन लगते हैं और दूसरे पैरामीटर में सेकंड। 15 * 60सेकंड 15 मिनट है।


1

यदि आप उपयोग कर रहे हैं time.time()और आउटपुट के रूप में टाइमस्टैम्प चाहते हैं

बस उपयोग करें

CONSTANT_SECONDS = 900 # time  in seconds (900 seconds = 15 min)

current_time = int(time.time())
time_before_15_min = current_time - CONSTANT_SECONDS

आप अपने आवश्यक समय के अनुसार 900 सेकंड बदल सकते हैं।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.