मैं प्रारंभिक समय शून्य (0 सेकंड) में सेट करना चाहता हूं और रन टाइम अवधि के अंत तक कुछ करना चाहता हूं (मान लें कि 3600 सेकेंड)

यह प्रोग्राम सिमुलेशन के लिए है और मुझे लगता है कि मैं केवल काउंटर का उपयोग नहीं कर सकता क्योंकि सिमुलेशन चलने के दौरान अन्य प्रक्रियाएं होंगी।

उदाहरण के लिए

start = 0
run_time = 3600
timer = 0
while timer <= run_time:
    print(timer)
    # do other stuff
-1
AGH 9 जुलाई 2020, 04:23

3 जवाब

सबसे बढ़िया उत्तर

मैं देखता हूं कि आपका क्या मतलब है, आप इसे पूरा करने के लिए धागे का उपयोग कर सकते हैं

from threading import Thread
from time import sleep

run_time = 10 #seconds

def WhateverYourDoing():
    while run:
        print("Look, I'm doing stuff!")
        sleep(1)

sim = Thread(target=WhateverYourDoing)

for x in range(3, 0, -1):
    print(x)
    sleep(1)
print("Go!")
run = True
sim.start()
sleep(run_time)
run = False
print("DONE")
0
MichaelT572 9 जुलाई 2020, 04:34

आप बस datetime मॉड्यूल का उपयोग कर सकते हैं:

import datetime as dt

start = dt.datetime.now()
run_time = dt.timedelta(seconds=3600)

while dt.datetime.now() <= start + run_time:
   ....
   ....
0
pavel 9 जुलाई 2020, 04:31

ये कोशिश करें:

from time import time

print("Stopwatch running..")
t0 = time()
watch = 0

while watch-t0 < 3:
    watch = time()
    # Your Code

print(" Finished!\n Time =",watch - t0)
0
user10637953 9 जुलाई 2020, 04:37