본문 바로가기

코딩/파이썬

파일 입출력

파일 열기

: 파일을 열려면 open 함수를 사용한다.

 

f = open("파일명", "모드")

 

파일명 : 열고자 하는 파일의 이름이나 경로

모드: 파일을 어떻게 열 것인지를 지정

 

r: 읽기 모드 (기본값)

w:쓰기 모드 (파일이 있으면 덮어쓰기)

a: 추가 모드 (파일의 끝에 내용을 추가)

b: 바이너리 모드 (텍스트가 아닌 바이너리 데이터를 읽고/쓸 때 사용)

+: 읽기와 쓰기 모드

 

파일 쓰기

f = open('example.txt', 'w')
f.write('Hello, Python!\n')
f.writelines(['Line1\n', 'Line2\n'])
f.close() # 꼭 써야함!
f = open('data.txt', 'wt')
for i in range(10):
	f.write('파일 열기 테스트: ' +str(i) + '\n') #\ㅜ: 파일 내에서 개행
f.close()
print('data.txt 파일에 쓰기 완료!')

data.txt 파일에 쓰기 완료!

 

상대 경로와 절대경로의 차이

: 상대 경로 - 현재 작업 디렉토리에 대한 파일의 위치,

  절대 경로 - 파일 시스템의 루트부터의 전체 경로

 

with문 사용하기

: 파이썬의 with문을 사용하면 파일을 열고 작업한 후 자동으로 파일을 닫을 수 있다.

with open('./data/word.txt', 'w') as f:
	while True:
    	data = input('단어를 입력하세요:')
        if data.lower() == quit:
        	break
         f.write(data + '\n')

 

파일 읽기

f = open('example.txt', 'r')
content = f.read()
print(content)
f.close()

Hello, Python!

Line1

LIne2

f = open('example.txt', 'r')
content = f.read(10) #해당 글자 갯수만 적어주면 됨
print(content)
f.close()

Hello, Pyt

f = open('example.txt', 'r')
while True:
	data = f.read(10)
    if not data:
    	break
    print(data, end='')

Hello, Python!

Line 1

Line 2

with open('./data/data.txt', 'r') as f:
	while True:
            data = f.read(10)
            if not data:
                break
            print(data, end='')

Hello, Python!

Line 1

Line 2

with open('./data/word.txt', 'r') as f:
	lines = []
    while True:
    	line = f.readline()
        if not line:
        	break
        if len(line.strip()) != 0:
        	print(line, end='')
            lines.append(line.strip())

apple

banana

orange

melon

berry

print(lines)

['apple','banana','orange','melon','berry']

with open('./data/word.txt', 'r') as f:
	lines = f.readlines()
    print(lines)

['apple\n', 'banana\n', 'orange\n' 'melon\n', 'berry\n']

li = []
for i in lines:
	li.append(i.replace('\n', '')
li

['apple', 'banana', 'orange' 'melon', 'berry']

 

예외 처리와 함께 사용하기

try:
	with open('nofile.txt', 'r') as f:
    	    content = f.read()
        	print(content)
except FileNotFoundError:
	print('파일이 존재하지 않습니다')

 

'코딩 > 파이썬' 카테고리의 다른 글

변수 타입 어노테이션  (0) 2024.03.21
파이썬 모듈  (0) 2024.03.20
파이썬 과제 (4). 주민등록번호 유효성 검사  (0) 2024.03.20
파이썬의 예외처리  (0) 2024.03.20
스페셜 메서드  (0) 2024.03.20