Я искал документацию Python для print
, в которой говорится:
print (* objects, sep = '', end = '\ n', file= sys.stdout, flush = False)
Как видно, если file
для печати не указан, используется значение по умолчанию sys.stdout
, что заставило меня задуматься.
Вызов print
определенно не импортирует sys
в фоновом режиме, так как это работает?
это sys.stdout
каким-то образом достижимо отовсюду?
Пример:
Я использую PyCharm и хочу создать функцию, которая либо печатает сообщение text
в файл, либона стандартный вывод.Я начал писать:
def my_print(text, file=None):
print(text, file=file if file is not None else ?)
Так что же будет после else
?sys.stdout
не работает и, очевидно, я не заинтересован в подробностях:
def my_print(text, file=None):
if file is None:
print(text)
else:
print(text, file=file)