파일 열기
: 파일을 열려면 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 |