성실한 사람이 되자

성실하게 글쓰자

This is spear

Programming/Python

파이썬 파일 읽기, 쓰기 (Reading and Writing file on Python )

Imaspear 2020. 6. 15. 18:23
728x90

파일의 필요성 (Need for files)

변수는 모두 메모리에서 만들어지는데 메모리에 저장된 데이터들은 하드 디스크에 파일 형태로 저장하면 전원이 꺼지더라도 데이터가 보존된다. 

그렇기에 데이터를 영구 보관하고 싶으면 하드디스크 안에 파일 형식으로 저장해야 한다.

 

파일에서 데이터 처리 간단한 알고리즘

  1. 파일을 연다.
  2. 파일에서 데이터를 이용해 작업을 한다.
  3. 파일을 닫는다.

 

파일 열고 닫는 방법


파일 읽기

 

infile = open("test.txt", "r")

line2 = infile.readlines()
print(line2)

infile.close()

 

파일 쓰기( 인코딩 UTF8을 하지 않으면 기본 설정인 안시 코드로 사용돼서 한글을 인식하지 못한다. )

 

infile = open("writefile.txt","w", encoding="UTF8")
infile.write("asdadasasdadas \n")

infile.close()

 

파일 모드


밑에 그림을 보시면 파일을 여는데 기본적인 설정을 보여주는데 한국어를 사용해야 하는 경우에는 encoding = UTF8을 설정해주셔야 UnicodeDecode Error가 뜨지 않습니다.

 

파이썬 3.7.5 같은 경우에는 설정하지 않아도 ANSI에서 한글이 잘 나오는군요.

 

open 하는 파일의 기본 설정 

 

  • r - 읽기 모드
  • w - 쓰기 모드
  • a - 추가 모드
  • r+ - 읽기와 쓰기 모드

간단하게 파일을 한 줄씩 읽기

 

infile = open("test.txt", "r")

for line in infile:
	line = line.rstrip()
    print(line)

infile.close()

 

파이썬을 이용한 파일 복사하기 

 

name1 = input("plz write file name(in file)")
name2 = input("plz write file name(out file)")

file1 = open(name1, "r", encoding="UTF8")
file2 = open(name2, "w", encoding="UTF8")

data = file1.read()
file2.write(data)

file1.close()
file2.close()