Найти - Пользователи
Полная версия: Есть один модуль.
Начало » Python для новичков » Есть один модуль.
1
omo
Коллеги, есть один програмный комплекс, всё написано на питоне, исходники не доступны. Есть куча модулей вида bla-bla-bla.pyc, производитель не рассчитывал, что их будут использовать вне комплекса, но “очень хочется” и очень надо. При подключении модуля получается такая вот ерунда:
>>> import some_module
Content-Type: application/json;
{"RESULT": "SUCCESS", "VALUE": "..какие-то интересующие меня данные..."}

dir(some_module) показывает нужные мне методы и воспользоваться результатом работы модуля я могу, но меня смущает именно момент подключения с выводом json данных. Можно ли как-нибудь штатным способом подавить вывод при импорте, ибо консольный скрипт, который будет использовать этот модуль, подразумевает несколько иной вывод. Или есть какой-то более правильный способ оперировать этим пресловутым json выводом?
sergeek
from contextlib import contextmanager
 
@contextmanager
def silent_stdout():
    import sys
    write = sys.stdout.write
    do_not_write = lambda *args : None
    sys.stdout.write = do_not_write
    yield
    sys.stdout.write = write
 
with silent_stdout():
    import some_module
print('privet')
 
omo
То, что надо. Благодарю.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB