V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
SharkIng
V2EX  ›  问与答

Python import 一个 .py 文件的时候有没有办法禁止这个的 output

  •  
  •   SharkIng · Jul 13, 2017 · 1659 views
    This topic created in 3211 days ago, the information mentioned may be changed or developed.

    问题是这样的,我们有个自制的「 library 」用来读取我们的数据库,这个文件会 import 一堆其他的 dependency。我们为了方便,如果 import 错误,except 就 print error

    现在问题来了,每次应用这个文件的时候都会有一堆的 import exception (主要有些 library 是 windows 下的,linux 下用就会说没有这个库)

    在不修改这个本身的文件的情况↓,有什么办法静止他的所有 output,我只需要用他的 Object,然后读取数据库就行了

    Supplement 1  ·  Jul 14, 2017
    二楼的办法就可以,只是需要把 None 改成一个文件,否则会报错 none not writable 什么的
    再次感谢,结帖
    4 replies    2017-07-14 00:48:36 +08:00
    billlee
        1
    billlee  
       Jul 13, 2017
    那就只能把把标准输出改到 /dev/null
    weyou
        2
    weyou  
       Jul 13, 2017 via Android   ❤️ 2
    import sys
    _stdout = sys.stdout
    sys.stdout = None
    import your_library
    sys.stdout = _stdout
    手机发帖,没测试,楼主试试吧
    SharkIng
        3
    SharkIng  
    OP
       Jul 13, 2017
    @weyou #2 感谢,我试试看


    @billlee #1 这个试过一下感觉不行。
    Trim21
        4
    Trim21  
       Jul 14, 2017   ❤️ 1
    sys.stdout = open(os.devnull, "w")
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5495 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 08:51 · PVG 16:51 · LAX 01:51 · JFK 04:51
    ♥ Do have faith in what you're doing.