Python:禁止不使用stdou的库输出

2024-10-01 00:35:16 发布

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

我在使用pyVisa库进行端口通信时遇到问题,因为它有时会向控制台输出大量重复的信息(例如:

Comm::LockCheck: sess=122e248, isDevSess=0, locssess=0, pid=6220, lockpid=0

Devsess can be locked.

Intfsess can be locked.

我已经尝试了重定向stdout,正如其他帖子中所建议的那样(例如:

@contextlib.contextmanager
def suppress_stdout():
with open(os.devnull, "w") as devnull:
    old_stdout = sys.stdout
    sys.stdout = devnull
    try:  
        yield
    finally:
        sys.stdout = old_stdout 

这会禁止使用我自己的print命令,但不会阻止库打印。在

最好是在线程中使用安全的任何建议。(我知道尝试的代码不是)


Tags: 端口信息stdoutsysbecanold建议