반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 트리의 지름 java
- m1 docker
- 청년 Ai Big Data 아카데미
- 프로그래머스 나누어 떨어지는 숫자 배열 자바
- 빅데이터분석기사
- 트리의 지름 자바
- 프로그래머스 가운데 글자 가져오기 python
- m1 docker install
- 최소 스패닝 트리 자바
- 프로그래머스 가운데 글자 가져오기 자바
- 빅분기실기
- 가운데 글자 가져오기 python
- 가운데 글자 가져오기 java
- 나누어 떨어지는 숫자 배열 java
- codeup 1020 java
- 최단 경로 알고리즘
- 청년 AI Big Data 아카데미 13기
- docker remove
- 가운데 글자 가져오기 파이썬
- 가운데 글자 가져오기 자바
- 최소 스패닝 트리
- docker 삭제
- 나누어 떨어지는 숫자 배열 python
- 핸즈온 머신러닝
- docker 완전 삭제
- 프로그래머스 가운데 글자 가져오기 파이썬
- codeup 1020 자바
- 코드업 1020 자바
- 프로그래머스 나누어 떨어지는 숫자 배열 파이썬
- 코드업 1020 java
Archives
- Today
- Total
NineTwo meet you
[파이썬기초] 파일 입출력 본문
반응형
파일 생성하기
파일 열기 모드
r | 읽기 모드로 파일을 읽기만 할 때 사용한다. |
w | 쓰기 모드로 파일 내용을 쓸때 사용한다. 쓰기모드로 여는 경우 원래 있던 내용이 모두 사라진다. |
a | 추가 모드로 파일의 마지막에 새로운 내용을 추가할 때 사용한다. |
>>>f = open("새파일이름.txt",'w')
>>>f.close()
파일 내용 쓰기
f.write() 이용
C:\Users\USER\Documents\라는 경로에 newfile이라는 이름의 구구단이 입력된 파일 생성하기
원하는 파일의 위치를 입력하면 된다.
>>> f = open("C:\\Users\\USER\\Documents\\newfile.txt",'w')
for i in range(1,10):
for j in range(1,10):
data = "%d*%d=%d\n"%(i,j,i*j)
f.write(data)
>>>f.close()
파일 내용 읽기
앞서 생성한 파일을 'r'로 읽기 모드로 파일을 읽어 들일 수 있다.
readline() 함수 이용
파일의 가장 첫 번째 라인을 읽어 들인다.
만약 파일의 전체 내용을 읽고 싶다면 while을 같이 사용하면 된다.
>>> f = open("C:\\Users\\USER\\Documents\\newfile.txt",'r')
>>> data = f.readline()
>>> data
'1*1=1\n'
>>> type(data)
<class 'str'>
>>>f.close()
while()같이 사용해 전체 파일 읽기
>>> f = open("C:\\Users\\USER\\Documents\\newfile.txt",'r')
while 1:
data = f.readline()
if not data:
break
print(data)
1*1=1
1*2=2
1*3=3
1*4=4
1*5=5
1*6=6
1*7=7
1*8=8
...
9*7=63
9*8=72
9*9=81
>>>f.close()
readlines() 함수 이용
파일의 전체 내용을 읽어 들여 리스트로 리턴한다.
>>> f = open("C:\\Users\\USER\\Documents\\newfile.txt",'r')
>>> data1 = f.readlines()
>>> type(data1)
<class 'list'>
>>>data1
['1*1=1\n', '1*2=2\n', '1*3=3\n', '1*4=4\n', '1*5=5\n', '1*6=6\n', '1*7=7\n', '1*8=8\n', '1*9=9\n', '2*1=2\n', '2*2=4\n', '2*3=6\n', '2*4=8\n', '2*5=10\n', '2*6=12\n', '2*7=14\n', '2*8=16\n', '2*9=18\n', '3*1=3\n', '3*2=6\n', '3*3=9\n', '3*4=12\n', '3*5=15\n', '3*6=18\n', '3*7=21\n', '3*8=24\n', '3*9=27\n', '4*1=4\n', '4*2=8\n', '4*3=12\n', '4*4=16\n', '4*5=20\n', '4*6=24\n', '4*7=28\n', '4*8=32\n', '4*9=36\n', '5*1=5\n', '5*2=10\n', '5*3=15\n', '5*4=20\n', '5*5=25\n', '5*6=30\n', '5*7=35\n', '5*8=40\n', '5*9=45\n', '6*1=6\n', '6*2=12\n', '6*3=18\n', '6*4=24\n', '6*5=30\n', '6*6=36\n', '6*7=42\n', '6*8=48\n', '6*9=54\n', '7*1=7\n', '7*2=14\n', '7*3=21\n', '7*4=28\n', '7*5=35\n', '7*6=42\n', '7*7=49\n', '7*8=56\n', '7*9=63\n', '8*1=8\n', '8*2=16\n', '8*3=24\n', '8*4=32\n', '8*5=40\n', '8*6=48\n', '8*7=56\n', '8*8=64\n', '8*9=72\n', '9*1=9\n', '9*2=18\n', '9*3=27\n', '9*4=36\n', '9*5=45\n', '9*6=54\n', '9*7=63\n', '9*8=72\n','9*9=81\n']
>>>f.close()
read() 함수 이용
readlines()와 비슷하게 파일의 전체 내용을 읽어 들이지만 이를 문자열로 리턴한다는 차이점을 가진다.
>>> f = open("C:\\Users\\USER\\Documents\\newfile.txt",'r')
>>> data2 = f.read()
>>> type(data2)
<class 'str'>
>>>data2
'1*1=1\n1*2=2\n1*3=3\n1*4=4\n1*5=5\n1*6=6\n1*7=7\n1*8=8\n1*9=9\n2*1=2\n2*2=4\n2*3=6\n2*4=8\n2*5=10\n2*6=12\n2*7=14\n2*8=16\n2*9=18\n3*1=3\n3*2=6\n3*3=9\n3*4=12\n3*5=15\n3*6=18\n3*7=21\n3*8=24\n3*9=27\n4*1=4\n4*2=8\n4*3=12\n4*4=16\n4*5=20\n4*6=24\n4*7=28\n4*8=32\n4*9=36\n5*1=5\n5*2=10\n5*3=15\n5*4=20\n5*5=25\n5*6=30\n5*7=35\n5*8=40\n5*9=45\n6*1=6\n6*2=12\n6*3=18\n6*4=24\n6*5=30\n6*6=36\n6*7=42\n6*8=48\n6*9=54\n7*1=7\n7*2=14\n7*3=21\n7*4=28\n7*5=35\n7*6=42\n7*7=49\n7*8=56\n7*9=63\n8*1=8\n8*2=16\n8*3=24\n8*4=32\n8*5=40\n8*6=48\n8*7=56\n8*8=64\n8*9=72\n9*1=9\n9*2=18\n9*3=27\n9*4=36\n9*5=45\n9*6=54\n9*7=63\n9*8=72\n9*9=81\n'
>>>f.close()
파일 내용 추가
'w'를 사용하면 기존에 파일이 있던 경우 파일의 내용이 모두 사라지고 새로운 내용이 덮어서 써진다.
기존의 파일 끝에 새로운 내용을 추가하려 한다면 'a'를 사용해야 한다.
>>> f = open("C:\\Users\\USER\\Documents\\newfile.txt",'a')
>>> f.write("파일 끝에 새로운 내용을 추가합니다.")
>>> f.write("'a'를 사용해서 파일을 열면 가능합니다.")
>>>f.close()
with문 사용
위의 예제를 살펴보면 모두 파일을 open()으로 열고 close()로 닫아주는 것을 확인할 수 있다.
close()를 생략하면 프로그램 종료 시 자동으로 열린 파일을 닫아준다.
만약 그전에 쓰기 모드로 연 파일을 다시 사용하려면 오류가 발생한다.
그래서 사용하는 것이 with문이다.
with를 사용하면 파일을 사용하고 자동을 닫아준다.
앞서 사용했던 예제를 with문으로 바꾼 결과를
>>> f = open("C:\\Users\\USER\\Documents\\newfile.txt",'w')
for i in range(1,10):
for j in range(1,10):
data = "%d*%d=%d\n"%(i,j,i*j)
f.write(data)
>>>f.close()
with open("C:\\Users\\USER\\Documents\\newfile1.txt",'w') as f:
for i in range(1,10):
for j in range(1,10):
data = "%d*%d=%d\n"%(i,j,i*j)
f.write(data)
반응형
'프로그래밍언어 > 파이썬' 카테고리의 다른 글
[파이썬기초] 모듈 (0) | 2020.09.24 |
---|---|
[파이썬기초] 클래스 (0) | 2020.09.24 |
[파이썬기초] 사용자 입력과 출력 (0) | 2020.09.23 |
[파이썬기초] 함수 (0) | 2020.09.23 |
[파이썬기초] 제어문(조건문 & 반복문) (0) | 2020.09.22 |
Comments