将Python输出重定向到控制台窗口

时间:2014-03-22 17:32:51

标签: python

所以,我正在寻找的是将Python的标准输出指向已经打开的Windows控制台窗口的方法。

我正在使用PyGame开发游戏,我希望在我的第二个屏幕上弹出所有print()调试信息,我打开了一个Windows终端。我知道我需要将sys.stdout更改为某些内容,但是如何将终端窗口指向它呢?

1 个答案:

答案 0 :(得分:0)

所以,我最终得到了这个小脚本:

import os
import sys
import time


def main():
    """
    Starts the loop check.
    """
    if len(sys.argv) == 2:

        filename = sys.argv[1]

        while True:

            # Clears the window
            os.system("cls")

            print("Tailing: ", filename)

            # Opens the file and reads the lines from it
            with open(filename) as fileToRead:

                for line in fileToRead:
                    # Gets rid of the newline at the end
                    line = line.strip("\n")
                    print(line)  # lint:ok

                # Closes the file
                fileToRead.close()

            # Waits a bit
            time.sleep(0.5)

main()

所以,我做的是打开一个控制台,用我设置sys.stdout点的文件调用这个脚本,这个脚本每隔0.5秒自动刷新一次,并读取文件。脚本可能需要在这里和那里进行一些调整,但大多数情况下都能很好地进行调整。