Python中每秒记录变量的值

2024-03-28 10:49:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要每秒钟或几秒钟打印一个变量的值,而“同时”这个变量正在被修改。所以我会在main函数中修改这个变量,我希望每秒都能打印出它的值。比如:

'''This is my main program'''

for i in range(very large number):

'''do something which modifies the value of 'var' '''

在代码的其他地方:

^{pr2}$

我看了看this,但我不确定这是否是我要找的,或者我应该如何使用它。在

我需要的是非常简单的,没有其他线程,我不关心同步任何东西,也不关心何时在main函数中打印值。在


Tags: 函数innumberforismainmyrange
2条回答

您可以使用线程每秒打印var。在

试试这个例子:

导入线程

var = 5


def printit():
  global var
  threading.Timer(5.0, printit).start()
  print "Hello, World!", var

printit()

import time

for i in range(1000000):
    time.sleep(2)
    var = i

基本上,您所指的问题/答案是您需要的:

import threading import time

interesting = 0

class MonitorThread(threading.Thread):
    def __init__(self):
        threading.Thread.__init__(self)

    def run(self):
        global interesting
        while(1):
            print interesting
            time.sleep(1)

MonitorThread().start()

for interesting in range(2000000):
    time.sleep(1)

相关问题 更多 >