반응형
1.파일 생성하기
- 파일을 생성하기 위해 파이썬 내장함수인 open을 사용한다.
test_file = open("파일","파일모드"
- 파일모드
- 'r' : 읽기모드. 파일을 읽기만함. (파일이 없으면 에러)
- 'r+' : 읽기 or 쓰기 모드. (파일이 없으면 에러)
- 'w' : 쓰기모드. 파일을 쓰기만함. (파일이 없으면 생성)
- 'w+' : 읽기 or 쓰기 모드. (파일이 없으면 생성)
- 'a' : 추가모드. 파일의 마지막에 새로운 내용을 추가. (파일이 없으면 생성)
- 'a+' : 읽기 or 추가모드. (파일이 없으면 생성)
2. 파일 쓰기
- 파일을 w 모드로 open하여 사용한다.
- print("문자열",file = open한 파일명)을 사용하여 파일 쓰기를 할수 있다.
- write 문을 사용하여 입력할 수 있다.
print문 이용 예제코드
score_file = open("score.txt", "w", encoding="utf8")
print("수학 : 0", file = score_file)
print("영어 : 50", file = score_file)
score_file.close()
※ 파일 사용이 끝이 났으면 close() 함수를 이용하여 파일을 닫아줘야한다.
print문 이용 실행결과
score.txt 파일이 생성되고 print문에 적은 문자열이 적혀있는걸 볼 수 있다.
write 이용하여 파일 쓰지 예제코드
score_file = open("score2.txt", "w", encoding="utf8")
score_file.write("과학 : 80\n")
score_file.write("코딩 : 100")
score_file.close()
write 이용하여 파일 쓰지 실행결과
3. 파일 읽기
- open 시 파일모드를 'r'로 설정한다.
- 파일 읽기는 전체 다 읽기와 한줄 읽기가 있다.
- 전체 읽기 : read() 함수를 이용한다.
- 한 줄 읽기 : readline() 함수를 이용한다.
전체 읽기 예제코드
score_file = open("score.txt", "r", encoding="utf8")
print(score_file.read()) #한번에 다 읽어 올때
score_file.close();
전체 읽기 실행결과
파일 쓰기 모드 예제에서 만들었던 파일 전체를 읽어와 출력해주는 모습을 볼 수 있다.
한 줄 읽기 예제코드
한 줄만 읽기 때문에 2줄을 읽기 위해서는 readline()를 두 번 사용한다.
score_file = open("score.txt", "r", encoding="utf8")
print(score_file.readline(), end="")#한줄 읽고, 커서는 다음 줄로 이동하기 때문에 이동하지 않도록 설정
print(score_file.readline())
score_file.close()
한 줄 읽기 실행결과
4.반복문을 이용하여 읽고 쓰기
- 한 줄 읽기를 할 시 라인 수 만큼 readline()을 해줘야하기 때문데 반복문을 사용하면 편하다.
- write 시 file.write(str) 또한 쓰고 싶은 줄 수 만큼 써야하기 때문에 반복문을 사용하면 편하다.
한 줄 읽기 반복문 예제코드
readline()으로 읽은 문자열들은 리스트 형태로 저장되어 있다.
#while 문을 이용한 한 줄 읽기
score_file = open("score.txt", "r", encoding="utf8")
while True:
line = score_file.readline()
if not line:
break
print(line,end="")
score_file.close();
#for문을 이용한 한 줄 읽기
score_file = open("score.txt", "r", encoding="utf8")
lines = score_file.readlines() #list 형태로 저장
for line in lines:
print(line, end="")
score_file.close();
한 줄 읽기 반복문 실행결과
반복문을 이용하여 한 줄씩 읽어 출력한 결과를 볼 수 있다.
write 반복문 사용 예제코드
list_score = ["과학 : 0","영어 : 10", "도덕 : 100"]
score_file = open("score3.txt","w",encoding="utf8")
for line in list_score:
score_file.write(line+"\n")
score_file.close()
write 반복문 사용 실행결과
반응형
'프로그래밍언어 > python' 카테고리의 다른 글
[파이썬] class 정리- 사용법 (0) | 2021.02.04 |
---|---|
[파이썬] pickle 피클 사용법 (0) | 2021.02.03 |
[파이썬] 출력옵션(정렬, 콤마, 소수점) (0) | 2021.01.19 |
[파이썬]sep, end, stdout, stderr, ljust, rjust, zfill 사용방법 (0) | 2021.01.18 |
[파이썬] 조건문, 반복문, 함수,변수 사용방법 (0) | 2021.01.17 |
댓글