파이썬에서 텍스트 파일의 특정 행에 있는 내용 출력 - enumerate

파이선에서 텍스트 파일의 특정 행에 있는 내용을 출력하려면 enumerate() 함수를 이용해서 행번호와 그 행의 문자열을 가져온 후 조건을 적용하여 출력할 수 있습니다. 여기서 행번호는 0번부터 시작한다는 점에 유의해야 합니다. 즉, 0번행이 첫번째 행입니다.

예를 들어 my_data.txt 파일에서 3번째부터 10번째행을 출력하고 싶다면, 행번호는 0부터 시작하므로 2번부터 9번까지 출력하면 될 것입니다. 아래의 코드와 같이 할 수 있습니다.

f = open('my_data.txt', 'r')

for i, line in enumerate(f):
  if i >= 2 and i <= 9:
    print(line.rstrip())
  if i == 10:
    break

f.close()

위의 코드를 보면 파일에서 읽은 문자열을 line 변수에 할당하는데, 출력하는 print() 함수에서 줄바꿈을 추가해 주기 때문에 파일에서 읽은 내용에서 줄바꿈 기호(\n)는 rstrip() 함수를 이용해서 제거했습니다.

행번호 9번까지 출력하고자 했기 때문에 10번부터는 굳이 파일을 더 읽을 필요가 없습니다. 따라서 행번호가 10이면 break로 루프를 빠져나오고 파일을 닫습니다.


@joviansummer의 스팀 프로젝트

스팀 증인노드를 운영중입니다. @jswit에 증인투표해 주시면 감사하겠습니다.
(https://steemitwallet.com/~witnesses)

jswit 증인 노드 프로젝트를 시작합니다.

jsup 업보팅(upvoting) 서비스 소개

jsup 수혜자 지정 기능 추가

jSTEEM 프로젝트 - 텔레그램 챗봇으로 구현하는 스팀 블럭체인 탐색기

STEEM.NFT - 디지털 아트 보존 프로젝트

Posted through the AVLE Dapp (https://avle.io)

Sort:  

Upvoted! Thank you for supporting witness @jswit.
default.jpg

Coin Marketplace

STEEM 0.27
TRX 0.11
JST 0.030
BTC 67753.90
ETH 3783.00
USDT 1.00
SBD 3.54