TOP
class="layout-aside-left paging-number">
본문 바로가기
[파이썬 Projects]/<파이썬 기초>

[파이썬] 파이썬기초: 입력과 출력, 파일 읽고 쓰기

by 기록자_Recordian 2024. 6. 19.
728x90
반응형
시작에 앞서
해당 내용은 '<Do it! 점프 투 파이썬> 박응용 지음. 이지스 퍼블리싱' 을 토대로 작성되었습니다. 보다 자세한 내용은 해당 서적에 상세히 나와있으니 서적을 참고해 주시기 바랍니다.

사용자 입력

 

사용자가 입력한 값을 어떤 변수에 대입하고 싶을 때는 input을 사용하면 된다.

a 라는 변수를 input() 으로 지정해놓고 실행하면

a 라는 변수에 값을 입력하라는 창이 뜨고, 해당 창에  'Life is too short, you need python' 이라는 값을 입력하면

입력한 문장이 a에 대입된다.

 

◆ 프롬프트 값을 띄워서 사용자 입력받기

안내 문구 또는 질문이 나오도록 하고 싶을 때에는 input() 의 괄호 안에 질문을 입력하면 된다.

input("질문 내용")

 

Q. 두 개의 숫자를 입력받아 더하여 돌려주는 프로그램 만들기

▶ 데이터 타입을 int(정수)로 지정하지 않으면, 입력받은 값은 문자형이 되므로 '57'이 나온다.

따라서, 두 숫자의 합을 구하려면 데이터 타입을 반드시 정수형으로 지정해야 한다.


print 자세히 알기

 

print문은 사용자가 입력한 자료형을 출력하는 것이다.

◆ print문의 활용

- 큰따옴표(")로 둘러싸인 문자열은 + 연산과 동일

- 문자열 띄어쓰기는 콤마로

- 한 줄에 결괏값 출력하기

한 줄에 결괏값을 계속 이어서 출력하려면 매개변수 end를 사용해 끝 문자 지정

end 미사용시 세로로 쭉 나온다.


파일 읽고 쓰기

 

◆ 파일 생성하기 (open)

파일 객체 = open(파일 이름, 파일 열기 모드)

 

파일 열기 모드 설명
r 읽기 모드 - 파일을 읽기만 할 때 사용
w 쓰기 모드 - 파일에 내용을 쓸 때 사용
a 추가 모드 - 파일의 마지막에 새로운 내용을 추가할 때 사용

 

▶ 파일을 쓰기 모드로 열면 해당 파일이 이미 존재할 경우 원래 있던 내용이 모두 사라지고, 해당 파일이 존재하지 않으면 새로운 파일이 생성된다.

파일명: 새파일, 파일구분: 텍스트 파일, 모드: 쓰기 모드
'새파일' 이라는 텍스트 파일이 생성되었다.

 

※ 만약에 새로운 파일을 특정 파일 경로에 생성하고 싶다면 아래와 같이 작성해야 한다.

경로를 바탕화면으로 지정
바탕화면에 생성 확인


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

 

위에서 바탕화면에 생성한 '새파일" 문서 파일에 값 쓰도록 설정

 

값이 입력된 것이 확인된다.

 


프로그램 외부에 저장된 파일을 읽는 여러 가지 방법

 

◆ readline 함수

 

"새파일" 파일을 읽기 모드(r)로 연 후 readline()을 사용하여 파일의 첫 번째 줄을 읽어 출력하는 코드.

만약 모든 줄을 읽어서 화면에 출력하고 싶다면

▶ while True: 무한 루프 안에서 f.readline()을 사용해 파일을 계속해서 한 줄씩 읽어들이고,

더 이상 읽을 줄이 없으면 break를 수행.

 

◆ readlines 함수

 

readlines 함수는 파일의 모든 줄을 읽어서 각각의 줄을 요소로 갖는 리스트로 돌려준다.

▶ lines는 ["1 번째 줄입니다.", "2 번째 줄입니다.", ....., "10 번째 줄입니다."]가 된다.

 

◆ read 함수

 

read 함수는 파일의 내용 전체를 문자열로 돌려준다.


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

 

쓰기 모드('w")로 파일을 열 때 이미 존재하는 파일일 경우, 그 파일의 내용이 모두 사라지게 된다.

만약 래 있던 값을 유지하면서 새로운 내용 값만 추가해야 할 경우에는 파일을 추가 모드('a')로 열면 된다.

 

 

기존 파일에 새로운 내용이 추가되었음을 알 수 있다


with문과 함께 사용하기

 

파일을 열면 항상 close해 주는 것이 좋으나, with문을 사용하면 파일을 열고 닫는 것을 자동으로 처리하는 역할을 해준다.

▶ close 필요 없이 with문을 벗어난 순간 열린 파일 객체 f가 자동으로 close 된다.

 

Q. 사용자의 입력을 파일에 저장하는 프로그램 작성하기

 

Q-1. 그러나, '달'을 '태양'으로 잘못 입력했다. '태양'을 달로 바꿔라.

 

Q-2. 해당 명언을 말한 위인을 test.txt 파일에 넣어라. (진 시먼스)


전체 코드

04. input_owr.ipynb
0.01MB

728x90
반응형