파이썬 기초 3-2. 사용자 입력과 출력 과 파일 읽고 쓰기

MANBOKWAK·2024년 1월 12일

파이썬 기초

목록 보기
7/15

사용자 입력

1. input함수

# input 함수 Example
a = input() # Hello World! 입력
 
print(a) # Hello World!
  • 사용자의 입력에 사용되는 함수

  • 입력되는 모든 input을 문자열로 인식


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

  • input함수 괄호 안에 문자열을 입력하면 프롬프트를 띄을 수 있음

  • input('문자열') 형식으로 사용가능

number = input('숫자를 입력하세요 : ')
# 숫자를 입력하세요 : 

print(number)


3. print문

  • print문은 입력한 자료형을 출력하는데 사용됨

  • 문자열, 숫자, 리스트 등등 다 출력할 수 있음

  • 그 외에도 할 수 있는 여러가지의 기능이 있음

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

print("Hello" "World")

print("Hello" + "World")
  • 두 코드의 출력은 동일함

  • 즉 따옴표로 둘러싸인 문자열은 연속해서 사용하면 +를 사용한것과 같음

문자열 띄어쓰기는 콤마(,)

print("Life","is","too short")
# Life is too short
  • 콤마를 사용하면 문자열 사이에 띄어쓰기를 할 수 있음

한줄에 결괏값 출력하기

  • print문은 자동으로 끝나면 줄바꿈을 추가해줌

  • end 매개변수를 사용하면 줄바꿈을 안하고 출력할 수 있음

for i in range(10):
	print(i , end = ' ')
 
 # 0 1 2 3 4 5 6 7 8 9

파일 읽고 쓰기

1. 파일 생성하기

  • 파일 생성은 파일 객체 = open(파일 이름, 파일 열기 모드)의 형식으로 가능하다
# 파일 생성 Example
f = open('new_file.txt', 'w')
f.close()

  • 위 코드에서 마지막에 f.close는 일반적으로 해주는것이좋음

  • 파이썬이 자동으로 프로그램 종료시 닫아 주지만

  • 쓰기 모드로 열었던 파일을 닫지않고 다시 사용하려면 오류가 발생함

  • 파일이 저장될 디렉토리까지 명시하면 해당 디렉토리에 파일이 생성됨 -> f = open("C:home/new_file.txt", 'w') 처럼 사용할 수 있음

파일 열기 모드 종류

파일 열기 모드설명
r읽기 모드 - 파일을 읽기만 할 때 사용
w쓰기 모드 - 파일에 내용을 쓸 때 사용
a추가모드 - 파일의 마지막에 새로운 내용을 추가할 때 사용
  • 파일을 쓰기모드로 열면 해당 파일이 이미 존재할 경우 원래 있던 내용이 모두 사라짐, 해당 파일이 존재하지 않으면 새로운 파일이 생성됨

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

# 출력값을 파일에 적는 Example
f = open('new_file.txt', 'w')
for i in range(1,11):
    data = "%d번째 줄입니다.\n" % i
    f.write(data)
f.close()
  • 위코드 처럼 write 함수를 사용하면 파일에 내용을 추가할 수 있음

3. 외부에 저장된 파일을 읽는 방법

1. readline 함수

# readline 함수 Example
f = open('new_file.txt', 'r')
line = f.readline()
print(line)
f.close()
  • 파일을 읽기모드로 연 후 readline()함수를 사용해서 파일의 첫번 째 줄을 읽어 출력하는 코드
# readline으로 모든 라인을 출력하는 Example
f = open('new_file.txt', 'r')
while(True)  	
    line = f.readline()
	if not line: break
    print(line)
f.close()

readlines 함수

# readlines 함수 Example
f = open('new_file.txt', 'r')
lines = f.readlines()
for line in lines:
    print(line)
f.close()
  • readlines 함수는 파일의 모든줄을 읽어서 각각의 줄을 요소로 갖는 리스트를 리턴해줌

  • 따라서 출력문은 1번째 줄부터 10번째 줄까지가 출력이된다.

read함수

# Example
f = open('new_file.txt', 'r')
data = f.read()
print(data)
f.close()
  • read함수는 파일의 내용 전체를 문자열로 리턴해줌

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

  • 'w' (쓰기 모드)로 파일을 열 때 이미 존재하는 파일을 열면 그 파일의 내용이 모두 사라지게됨

  • 원래 있던 값을 유지하면서 단지 새로운 값만 추가하는 경우에는 'a'(추가 모드)를 사용

# a 추가 모드 Example
f = open('new_file.txt', 'a')
for i in range(11,20):
    data = '%d번째 줄입니다.\n' % i
    f.write(data)
f.close()
  • 위 코드 처럼 파일을 열때 open에서 a모드를 사용하면 내용이 기존 파일에 추가됨

5. with문

  • 파일을 열면 항상 close 해주는 것이 좋음

  • with문을 사용하면 파일을 자동으로 열고 닫을 수 있음

# with문 Example
with open('new_file.txt', 'w') as f:
    f.write('Hello World')
  • with문을 사용하면 with블록을 벗어나는 순간 열린 파일 객체 f가 자동으로 close되어 사용하기 편리함
profile
Backend/ DevOps를 지망하는 곽희상입니다.

0개의 댓글