더북(TheBook)

그 외 유용한 필터로 more가 있는데, more는 표준 입력 스트림(혹은 명령 줄 인수로 지정한 파일)에서 데이터를 읽어 터미널 창에 한 번에 한 화면씩 출력한다. 예를 들어 다음 명령을 입력하면 터미널 창에 난수를 화면을 가득 채울 때까지 출력하고 나서, 사용자가 [Space] 키를 누른 후에 그다음 화면을 보여준다.

% python3 randomseq.py 1000 | more

필터라는 용어는 약간 오해의 소지가 있다. 원래는 rangefilter.py 프로그램처럼 표준 입력에서 읽은 데이터를 걸러내 표준 출력 스트림으로 보내기 위한 것이었지만, 이제는 표준 입력 스트림에서 데이터를 읽어 표준 출력 스트림으로 내보내는 모든 프로그램을 의미하는 용어로 사용된다.

다중 스트림 여러 소스에서 입력받거나 여러 목적지로 출력하는 프로그램이 필요한 경우도 종종 있다. 3.1절에서는 stdio.py 모듈을 일반화해 여러 입력 스트림과 출력 스트림을 사용할 수 있게 해주는 instream.pyoutstream.py에 대해 설명한다. 이 모듈은 파일뿐만 아니라 임의의 웹 페이지 등 다양한 스트림을 리다이렉션할 수 있게 해준다.

대량의 정보를 처리하는 것이 핵심인 컴퓨터 애플리케이션이 많이 있다. 과학자들은 여러 실험에서 수집한 데이터를 분석하고, 증권 전문가는 최근의 금융 거래에 대한 정보를 분석하고, 학생들은 음악과 영화 파일들을 관리하고 싶어 한다. 이런 작업에는 데이터-주도 프로그램이 표준이다. 표준 출력, 표준 입력, 리다이렉션, 파이프는 이런 작업을 파이썬 프로그램으로 할 수 있게 해준다. 웹이나 표준적인 장치를 통해 수집한 데이터를 파일에 저장하고 이 데이터를 리다이렉션과 파이프를 이용해 자신들이 작성할 프로그램에 연결한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.