Python:创建循环以更新数据

时间:2015-09-16 17:56:13

标签: python loops cpu-usage psutil

我有一个小的python脚本,这是打印出机器正在使用的CPU使用量,我遇到了一个问题,它在百分比发生变化后不会更新,我把它放在无限循环,但它保持在记录的最后一个百分比,这是我的代码任何帮助或建议将是辉煌的:

cpu_time = psutil.cpu_percent(interval=1,percpu=False)
var=1
while var==1:
    if cpu_time < 10:
        print "CPU usage: "+str(cpu_time)
    elif cpu_time <=25:
        print "CPU usage: "+str(cpu_time)

等......分别为50%,75%和90%

3 个答案:

答案 0 :(得分:3)

就像现在一样,cpu_time永远不会改变。您想要更新循环中的cpu_time

while True:
    cpu_time = psutil.cpu_percent(interval=1,percpu=False)
    if cpu_time < 10:
        print "CPU usage: "+str(cpu_time)
    elif cpu_time <=25:
        print "CPU usage: "+str(cpu_time)

答案 1 :(得分:1)

你需要刷新cpu_time值:把它放在循环中

var=1
while var==1:
    cpu_time = psutil.cpu_percent(interval=1,percpu=False)

    if cpu_time < 10:
        print "CPU usage: "+str(cpu_time)
    elif cpu_time <=25:
        print "CPU usage: "+str(cpu_time)

答案 2 :(得分:1)

您需要调用将CPU数据返回到循环中的函数,而不是在外部:

while True:
    cpu_time = psutil.cpu_percent(interval=1,percpu=False)
    if cpu_time < 10:
        print "CPU usage: "+str(cpu_time)
    elif cpu_time <=25:
        print "CPU usage: "+str(cpu_time)

希望有所帮助。