Python中的计时器
我正在解决一个问题,我需要每45秒打印一次。因此,我使用了Python中的计时器,python,timer,Python,Timer,我正在解决一个问题,我需要每45秒打印一次。因此,我使用了time.sleep(45)并编写了如下代码: import timer def print_data(): print "Hello World!" time.sleep(45) while True: print_data() 我有几个问题,我正在努力理解和学习。我已经重新搜索了这个,但没有找到我要找的答案。请在下面找到我的问题: 如何连续打印上述内容,每45秒等待1小时 我们可以给出一个随机值,比如30-45
time.sleep(45)
并编写了如下代码:
import timer
def print_data():
print "Hello World!"
time.sleep(45)
while True:
print_data()
我有几个问题,我正在努力理解和学习。我已经重新搜索了这个,但没有找到我要找的答案。请在下面找到我的问题:
请帮助我理解这些问题。任何帮助都将不胜感激。提前感谢。这应该满足您的需求:
import time
from random import randint
def print_data():
print "Hello World!"
time.sleep(randint(30, 45))
def print_data_for(total_time):
start_time = time.time()
while time.time() < start_time + total_time:
print_data()
print_data_for(60*60) # 1 hour
导入时间
从随机导入randint
def print_data():
打印“你好,世界!”
睡眠时间(randint(30,45))
def打印数据(总时间):
开始时间=time.time()
while time.time()<开始时间+总时间:
打印数据()
打印数据(60*60)#1小时
至于CPU/RAM的使用,根据我的经验(我有一个基于
sleep
的脚本,它可以打印监视另一个进程的常规状态消息),当进程空闲时,它的成本根本不是很高,这在这里得到了证实:这应该满足您的要求:
import time
from random import randint
def print_data():
print "Hello World!"
time.sleep(randint(30, 45))
def print_data_for(total_time):
start_time = time.time()
while time.time() < start_time + total_time:
print_data()
print_data_for(60*60) # 1 hour
导入时间
从随机导入randint
def print_data():
打印“你好,世界!”
睡眠时间(randint(30,45))
def打印数据(总时间):
开始时间=time.time()
while time.time()<开始时间+总时间:
打印数据()
打印数据(60*60)#1小时
至于CPU/RAM的使用,根据我的经验(我有一个基于睡眠的脚本,它可以打印监视另一个进程的常规状态消息),当进程空闲时,它一点也不昂贵,这在这里得到了证实:您可以打印每一个随机秒值,并等待键盘中断,因为time.sleep()不起任何作用
import time
from random import randint
def print_data(time, data):
start_time = time.time()
if time.time() < start_time + time:
pass
except KeyBoardInterrupt:
data = raw_input("what's your value?")
print data
else:
print data
data = "Hello World!"
while True:
print_data(data)
if time.time() - start_time > (60*5):
break
print "Done!"
导入时间
从随机导入randint
def打印数据(时间、数据):
开始时间=time.time()
如果time.time()<开始时间+时间:
通过
除键盘中断外:
数据=原始输入(“您的价值是多少?”)
打印数据
其他:
打印数据
data=“你好,世界!”
尽管如此:
打印数据(数据)
如果time.time()-开始时间>(60*5):
打破
打印“完成!”
另外,为了了解CPU和RAM的使用情况,您可以使用psutil库,psutil是一个模块,它提供了一个接口,通过使用Python以可移植的方式检索有关运行进程和系统利用率(CPU、内存)的信息,实现了ps、top和Windows task manager等工具提供的许多功能
它目前支持Linux、OS X、FreeBSD和Windows,Python版本从2.4到3.1,使用唯一的代码库。您可以打印每一个随机秒值,并等待键盘中断,因为time.sleep()不起任何作用
import time
from random import randint
def print_data(time, data):
start_time = time.time()
if time.time() < start_time + time:
pass
except KeyBoardInterrupt:
data = raw_input("what's your value?")
print data
else:
print data
data = "Hello World!"
while True:
print_data(data)
if time.time() - start_time > (60*5):
break
print "Done!"
导入时间
从随机导入randint
def打印数据(时间、数据):
开始时间=time.time()
如果time.time()<开始时间+时间:
通过
除键盘中断外:
数据=原始输入(“您的价值是多少?”)
打印数据
其他:
打印数据
data=“你好,世界!”
尽管如此:
打印数据(数据)
如果time.time()-开始时间>(60*5):
打破
打印“完成!”
另外,为了了解CPU和RAM的使用情况,您可以使用psutil库,psutil是一个模块,它提供了一个接口,通过使用Python以可移植的方式检索有关运行进程和系统利用率(CPU、内存)的信息,实现了ps、top和Windows task manager等工具提供的许多功能
它目前支持Linux、OS X、FreeBSD和Windows,Python版本从2.4到3.1,使用独特的代码库。感谢您的支持,我将浏览您提供的链接!谢谢你,我会浏览你提供的链接!