728x90
반응형
- open 명령어를 통해 파일을 생성 할 수 있습니다.
- open(파일명, option)
- option 종류
- w : 쓰기 (write)
- r : 읽기 (read)
- a : 이어쓰기(append)
1. 파일 생성하기
- f = open("파일이름", 'w'")
# 파일 생성하기
f = open("first_file.txt", 'w')
f.close()
- with open("파일이름", "w")
- with open으로 파일 생성 시 파일.close()를 사용하지 않아도 됩니다. (with 문 내에서 사용 된 후 자동으로 close 됩니다)
# with open으로 파일 생성
with open("with_open.txt", "w"):
pass
2. 파일 쓰기
- w 모드로 파일을 열고 write 명령어를 통해 파일에 작성 합니다.
f = open("first.txt", 'w', encoding='utf-8')
for i in range(1, 11):
data = str(i) + "번째 줄\n"
f.write(data)
f.close()
- file에 써진 내용 확인
1번째 줄
2번째 줄
3번째 줄
4번째 줄
5번째 줄
6번째 줄
7번째 줄
8번째 줄
9번째 줄
10번째 줄
3. 파일 읽기
- r 모드로 파일을 읽고 read, readline 명령어를 통해 파일에서 데이터를 읽어 옵니다.
# with open, r 모드로 파일 읽어오기
with open('first.txt', 'r', encoding='utf-8') as file:
read_txt = file.read() # 파일 전체 읽기
print(read_txt)
# 출력 값들
1번째 줄
2번째 줄
3번째 줄
4번째 줄
5번째 줄
6번째 줄
7번째 줄
8번째 줄
9번째 줄
10번째 줄
- readline()은 파일의 한 라인씩 읽어 올 수 있습니다.
- readline()으로 모든 라인을 읽어오기 위해서는 반복문을 이용해서 읽어옵니다.
# readline()으로 파일 한줄 씩 읽어오기
with open('first.txt', 'r', encoding='utf-8') as file:
read_txt = file.readline()
print(read_txt)
# 출력
1번째 줄
# 반복문으로 모든 라인 읽어서 출력하기
with open('first.txt', 'r', encoding='utf-8') as file:
while True:
read_txt = file.readline()
if read_txt == '' : break
print(read_txt)
# 출력
1번째 줄
2번째 줄
3번째 줄
4번째 줄
5번째 줄
6번째 줄
7번째 줄
8번째 줄
9번째 줄
10번째 줄
- readlines()를 사용하면 한줄 씩 읽어서 list에 담아 리턴해줍니다.
- list에 담겨있기 때문에 index로 접근해서 쉽게 사용이 가능합니다.
# readlines()로 모든 라인을 한줄 씩 읽어서 list에 리턴
with open('first.txt', 'r', encoding='utf-8') as file:
read_txt = file.readlines()
print(read_txt)
# 출력
['1번째 줄\n', '2번째 줄\n', '3번째 줄\n', '4번째 줄\n', '5번째 줄\n', '6번째 줄\n', '7번째 줄\n', '8번째 줄\n', '9번째 줄\n', '10번째 줄\n']
# index로 접근
print(read_txt[0])
1번째 줄 # 출력
4. 파일에 내용 추가하기
- a 옵션으로 파일을 열면 맨 마지막줄에 추가로 출력할 수 있습니다.
with open('first.txt', 'a', encoding='utf-8') as file:
file.write("11 번째 줄 추가")
- file 내용 확인 : "11번째 줄 추가"를 볼 수 있습니다.
1번째 줄
2번째 줄
3번째 줄
4번째 줄
5번째 줄
6번째 줄
7번째 줄
8번째 줄
9번째 줄
10번째 줄
11 번째 줄 추가
728x90
반응형
'python > python 기초' 카테고리의 다른 글
14. python 반복문 제어하기 - break, continue, pass (0) | 2022.05.21 |
---|---|
12. Python 함수 2 - return, parameter, local 변수, lambda (0) | 2022.05.08 |
11. Python 함수 1 - 함수의 구조, 정의, 호출 (0) | 2022.05.03 |
10. Python 반복문 - for, while (0) | 2022.04.29 |
9. python 조건문 - if / elif / else (0) | 2022.04.27 |