디지털 너구리 : 게임, IT 정보 및 다양한 지식 공유드립니다.

안녕하세요 엘빈입니다. 저번 포스팅에서는 사용자 입력과 출력 함수에 대해서 알아보았는데요. 프로그램은 항상 양방향 소통을 해야 합니다. 입력과 출력은 어느 프로그래밍 언어에서든 중요한 개념이죠. 사용자는 단순히 키보드로 입력할 뿐만 아니라 파일을 통해서 프로그램을 실행시키기도 합니다. 이번 포스팅에서는 파이썬에서 파일을 읽고 쓰는 방법들을 알아보겠습니다.

 

 

 

 

 

 

  파일 생성하기

 

파이썬 함수를 이용하여 파일을 생성할 수 있습니다. 파일 생성 코드는 다음과 같습니다.

 

f = open("test.txt",'w')

f.close()

 

Open 매개변수로 첫번째는 파일명을 두번째는 모드를 지정합니다. 모드란 파일을 어떤 모드로 열 것인지를 지정합니다. 열기 모드는 다음과 같습니다.

 

 r - 읽기모드 : 파일을 읽을 때
 w - 쓰기모드 : 파일을  
 a - 추가모드 : 마지막에 새로운 내용을 추가할 

 

 

 

 

 파일을 열어 삽입하기

 

파일을 열어 원하는 데이터를 삽입하는 과정도 간단합니다. 파이썬에서 미리 구현해놓은 함수를 가져다 쓰기만 하면 되는 것이죠. 다음은 파일 쓰기 예제 코드입니다.

 

f = open("test.txt",'w')

for i in range(1,5):
    data = "%d를 삽입합니다\n" % i
    f.write(data)

f.close()

 

다음과 같이 코드를 작성후 실행한 뒤 "test.txt" 파일을 열어봅시다.

 

 

 

1를 삽입합니다
2를 삽입합니다
3를 삽입합니다
4를 삽입합니다

 

데이터가 잘 들어간 것을 알 수 있습니다.

 

 

 

 

 

 파일을 열어 읽기

 

파일을 열어 읽는 방법에는 여러가지가 있습니다. "test.txt"의 내용을 다음과 같이 입력해봅시다.

 

this is 1
this is 2
this is 3
this is 4

 

 

(1) readLine 함수 : 한 줄씩 읽기

 

f = open("test.txt",'r')
str = f.readline()

print(str) # this is 1

f.close() 

 

 readline 함수를 사용하면 텍스트 파일의 가장 첫번째 줄이 화면에 출력됩니다.  만약 파일 전체 내용을 출력하고 싶다면 str 변수가 없을때까지 반복하면 됩니다. 다음은 전체 텍스트 파일을 출력하는 예제 코드입니다.

 

f = open("test.txt",'r')

while True:
    str = f.readline()
    if not str:
        break
    print(str)

f.close()

 

While문의 조건을 True로 설정하여 무한으로 반복하게 구성합니다. 만약 str 변수의 값이 없으면 break문을 통해 반복문을 탈출합니다.

 

 

(2) readlines 함수: 모든 줄을 읽기

 

Readlines 함수는 파일의 모든 내용을 읽는 함수입니다. 리스트 형식으로 각 인덱스 위치에 줄마다 작성된 내용을 저장합니다. 다음은 readlines 예제 코드입니다.

 

 

f = open("test.txt",'r')
f_all = f.readlines()

for str in f_all:
    print(str)

f.close()

 

해당 코드를 실행하면 파일에 작성된 모든 내용을 출력합니다.

 

 

 


마무리

 

지금까지 파이썬에서 파일을 읽고 쓰는 방법들에 대해서 알아보았는데요. 다른 언어에 비해서 간단한 구조를 가지고 있습니다. 개발을 하면서 파일을 읽어야 하는 상황이 많기 때문에 위의 기본적인 내용들을 숙지하시는 것을 추천드립니다. 포스팅 읽어주셔서 감사합니다.

 

 

 

 

이전 포스팅

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band