
302 Chapter 6
개행 문자 처리하기
데이터를 구분해 한 행으로 로깅하기
각각의 데이터를 구분자로 분리해 네 개의 데이터를 한 행으로 로깅할 수 있다면 좋을 겁니다.
로깅할 데이터가 어떤 문자를 포함할지 미리 알 수 없으므로 구분자를 결정하는 것은 쉽지
않은 문제입니다. 공백 문자는 자주 사용되는 문자 중 하나이므로 공백 문자는 구분자로
사용할 수 없습니다. 심지어 콜론(
:
), 콤마(
,
), 세미콜론(
;
) 등의 문자도 로깅 데이터에
포함될 수 있으므로 구분자로 사용하기 어렵습니다. 헤드 퍼스트 실험실에 근무하는
프로그래머들에게 조언을 구했더니 파이프 문자(
|
)를 구분자로 추천했습니다. 사람이 눈으로
쉽게 파악할 수 있을 뿐 아니라 로깅하는 데이터에 파이프 문자가 포함될 가능성이 적기
때문이죠.
이미 설명한 것처럼
print
에 추가 인자를 제공해 기본 동작을 바꿀 수 있습니다.
print
에
le
인자 외에 행의 끝(
end
-
of
-
line
) 값을 지정할 수 있는
end
인자를 지정할 수
있습니다(기본값은 개행 문자).
개행 문자 대신 파이프 문자를 행의 끝으로 인식하도록
log
_
request
함수를 바꿉시다.
def log_request(req: 'flask_request', res: str) -> None:
with open('vsearch.lo ...