stderr 출력에 대해서 질문드립니다

제가 아는 방법 중에 제일 좋은 방법이 뭔가요? 써놓고 나니까 파이썬 같지가 않아서요..

다른 더 좋은 방법이 있으면 알려주시면 감사하겠습니다

소스코드

import sys

#1.
print >> sys.stderr, 'spam'

#2.
sys.stderr.write('spam\n')

#3.
from __future__ import print_function
print('spam', file=sys.stderr)

1답변

  • 좋아요

    0

    싫어요
    채택취소하기

    작성하신 방법 중에서는 가독성이랑 파이썬 버전을 생각했을 때, 2번째 방법이 제일 좋은 것 같네요. 첫 번째 방법은 python3에서는 지원하지 않습니다. 세 번째 방법도 __future__모듈을 쓰고 있고요.

    제가 생각한 방법은 다음과 같습니다.

    from __future__ import print_function
    def warning(*objs):
        print("WARNING: ", *objs, file=sys.stderr)
    

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.