Python 기초, 입출력(사용자 입출력 / 파일 읽고 쓰기)
본문 바로가기
programming/Python

Python 기초, 입출력(사용자 입출력 / 파일 읽고 쓰기)

by 코딩하는 핑가 2020. 9. 16.
반응형

1. 사용자 입출력

# input 사용 : 입력되는 모든 것을 문자열로 취급
>>> a = input()
Life is too short, you need python
>>> a
'Life is too short, you need python'
>>>

# print
"큰따옴표로 둘러싸인 문자열은 + 연산과 동일"
>>> print("life" "is" "too short") # ①
lifeistoo short
>>> print("life"+"is"+"too short") # ②
lifeistoo short

"문자열 띄어쓰기는 콤마로 함"
>>> print("life", "is", "too short")
life is too short

"한 줄에 결괏값 출력"
>>> for i in range(10):
...     print(i, end=' ')
...
0 1 2 3 4 5 6 7 8 9

 

2. 파일 읽고 쓰기

* 파일 생성

# 파일 객체 = open(파일 이름, 파일 열기 모드)
"r: 읽기 / w: 쓰기 / a: 추가 - 파일의 마지막에 새로운 내용을 추가 시킬 때"
f = open("새파일.txt", 'w')
f.close()

f = open("C:/doit/새파일.txt", 'w')
f.close()

 

* 파일을 쓰기 모드로 열어 출력값 적기

f = open("C:/doit/새파일.txt", 'w')
for i in range(1, 11):
    data = "%d번째 줄입니다.\n" % i
    f.write(data)
f.close()

"//////////////////////////////////////////////////"

for i in range(1, 11):
    data = "%d번째 줄입니다.\n" % i
    print(data)
    
"""
두 방법의 차이점은 print 대신 파일 객체 f의 write 함수를 사용한 것
"""

 

* 프로그램의 외부에 저장된 파일을 읽는 방법

 

- readline() 함수 이용

f = open("C:/doit/새파일.txt", 'r')
line = f.readline() # 파일의 첫 번째 줄을 읽어 출력
print(line)
f.close()

1번째 줄입니다.

# 모든 줄 읽어서 화면에 출력
f = open("C:/doit/새파일.txt", 'r')
while True:
    line = f.readline()
    if not line: break
    print(line)
f.close()

- readlines 함수 이용

f = open("C:/doit/새파일.txt", 'r')
lines = f.readlines() # 모든 줄을 읽어서 각각의 줄을 요소로 갖는 리스트로 돌려줌
for line in lines:
    print(line)
f.close()

- read 함수 사용

f = open("C:/doit/새파일.txt", 'r')
data = f.read() # 파일의 내용 전체를 문자열로 돌려줌
print(data)
f.close()

 

* 파일에 새로운 내용 추가하기

# 쓰기모드로 파일을 열 때 이미 존재하는 파일을 열면 그 파일의 내용이 모두 사라짐
# 원래 있던 값을 유지하면서 단지 새로운 값만 추가해야할 경우

f = open("C:/doit/새파일.txt",'a')
for i in range(11, 20):
    data = "%d번째 줄입니다.\n" % i
    f.write(data)
f.close()

 

* with문과 함께 사용

# 위 예제의 파일 열고 닫기
f = open("foo.txt", 'w')
f.write("Life is too short, you need python")
f.close()

# 파일 열고 닫기 자동 처리
with open("foo.txt", "w") as f:
    f.write("Life is too short, you need python")
"with 블록을 벗어나는 순간 열린 파일 객체 f가 자동으로 close되어 편리"

점프 투 파이썬

반응형

'programming > Python' 카테고리의 다른 글

Python 기초, 입출력 연습문제  (0) 2020.09.16
Python 기초, 입출력(함수)  (0) 2020.09.16
Python 기초, 제어문 연습문제  (0) 2020.09.15
Python 기초, 제어문3(for문)  (0) 2020.09.15
Python 기초, 제어문2(while문)  (1) 2020.09.15

댓글