gpt4 book ai didi

python - 防止字符串被打印python

转载 作者:太空狗 更新时间:2023-10-29 21:39:26 28 4
gpt4 key购买 nike

我正在使用一些库,但我无法编辑它的源代码。库中有一个我必须调用的函数,当我调用它时,它会生成我想要的文件;但是,与此同时,它会将此警告打印到屏幕上数百次。警告始终相同。

Warning during export : no corresponding GDSII layer found for process and purpose

这有点烦人,让我打印任何东西到 stdout/stderr 都没用,因为它被这个愚蠢的警告淹没了。

我知道如何通过简单地为它们分配一个不同的文件来重定向 stdout/stderr。是否可以简单地检查将写入 stdout/stderr 的内容,如果是那个字符串则丢弃它,否则打​​印它?

最佳答案

我会使用类似...

3.x

import sys
from _io import TextIOWrapper

class StdoutFilter(TextIOWrapper):

def __init__(self, stdout):
super().__init__(stdout)
self.stdout = stdout

def write(self, output):
if output != "don't write this":
self.stdout.write(output)

sys.stdout = StdoutFilter(sys.stdout)

print("hello, world!")
print("don't write this")

sys.stdout = sys.__stdout__

2.x

from StringIO import StringIO

class StdoutFilter(StringIO):

def __init__(self, stdout):
StringIO.__init__(self, stdout)
self.stdout = stdout

希望对您有所帮助!

关于python - 防止字符串被打印python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33028298/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com