파이썬은 데이터를 처리하고 사용자와 상호작용하기 위한 표준 입출력, 파일 입출력 기능을 제공합니다. 오늘은 파이썬에 데이터를 전달하고 받을 수 있는 입출력에 대해 자세히 알아보겠습니다.
1. 파이썬 표준 입출력이란?
표준 입출력(Standard Input/Output)은 컴퓨터 프로그램과 외부 환경 간의 데이터 전달 방식을 의미합니다. 파이썬에서는 표준 입출력을 통해 데이터를 입력받고, 결과를 출력할 수 있습니다. 이것은 파이썬 프로그램을 통해 사용자와 상호작용하거나 파일에서 데이터를 읽고 쓸 때 중요한 역할을 합니다.
1) 표준 입력 (Standard Input)
표준 입력은 사용자로부터 데이터를 입력받는 방법을 의미합니다 . 파이썬에서는 input()
함수를 사용하여 사용자에게 입력을 요청하고, 사용자가 입력한 값을 문자열 형태로 반환합니다. 예를 들어,
name = input("이름을 입력하세요: ")
print("안녕하세요, " + name + "님!")
이 코드에서 input()
함수를 사용하여 사용자의 이름을 입력받고, 이를 활용하여 인사말을 출력합니다.
2) 표준 출력 (Standard Output)
표준 출력은 프로그램의 결과를 화면에 출력하는 방법을 말합니다. 우리가 앞에서부터 많이 사용했던 print()
함수를 사용하여 데이터를 화면에 출력할 수 있습니다. 예를 들어 아래의 print() 함수는 “안녕하세요, 파이썬!”을 화면에 출력합니다. print()
함수는 문자열 뿐만 아니라 변수, 연산 결과, 여러 값을 함께 출력할 수 있습니다.
print 함수는 우리가 앞에서부터 가장 많이 사용했던 함수 입니다. 단순히 출력을 해주는 것 뿐만 아니라, 다양한 기능을 제공합니다. 아래의 예시코드를 보면서 다양한 print함수의 활용법을 공부해 보시기 바랍니다.
name = "Alice"
age = 30
# 텍스트 출력
print("안녕하세요, 파이썬!") # 안녕하세요, 파이썬!
# 변수 값 출력
print("이름:", name) # 이름: Alice
# 여러 항목 출력
print("이름:", name, "나이:", age) # 이름: Alice 나이: 30
# 문자열 포맷팅
print(f"이름: {name}, 나이: {age}") # 이름: Alice, 나이: 30
# 줄 바꿈 없이 출력
print("줄 바꿈 없이", end=" ")
print("이어서 출력합니다.") # 줄 바꿈 없이 이어서 출력합니다.
# 구분자 설정
print("구분자", "로", "나눠서", sep="-") # 구분자-로-나눠서
# 문자열 연결
str1 = "Hello"
str2 = "World"
print(str1 + " " + str2) # Hello World
# 특수 문자 출력
print("이스케이프 시퀀스: \\n은 줄 바꿈을 나타냅니다.") # 이스케이프 시퀀스: \n은 줄 바꿈을 나타냅니다.
# 포맷 문자열 사용
message = "오늘의 온도는 %d도 입니다." % 25
print(message) # 오늘의 온도는 25도 입니다.
# 파일로 출력
with open("출력파일.txt", "w") as file:
print("파일로 출력합니다.", file=file)
2. 파이썬 파일 입출력 (File Input/Output)
표준 입출력은 파일에서 데이터를 읽고 쓸 때도 사용됩니다. open()
함수를 사용하여 파일을 열고, read()
, write()
함수를 사용하여 파일에서 데이터를 읽거나 쓸 수 있습니다. 파일 입출력을 통해서 파일을 읽고, 파일에 원하는 내용을 저장 할 수 있습니다.
# 파일을 열어 데이터를 읽기
file = open("텍스트파일.txt", "r") # "r"은 read를 의미합니다.
data = file.read()
file.close()
# 파일을 열어 데이터를 쓰기
file = open("새파일.txt", "w") # "w"는 write를 의미합니다.
file.write("파이썬으로 파일 쓰기 예제입니다.")
file.close()
이 코드에서는 파일을 열어 데이터를 읽고 쓰는 방법을 보여줍니다. open()
함수에 파일 이름과 모드를 지정하여 파일을 열고, read()
와 write()
함수를 사용하여 데이터를 읽거나 쓸 수 있습니다.
위에 코드에서 주의해야 할 사항은 file을 열여 줬을 경우 반드시 close()를 통해 파일을 닫아 줘야 한다는 겁니다. 파일을 닫지 않으면 자원 누수와 데이터 일관성 문제 등이 발생할 수 있으므로, 파일 작업이 끝나면 close()
를 호출하여 파일을 명시적으로 닫는 것이 중요합니다. 파이썬에서는 close()함수를 깜빡 하고 사용하지 않는 것에 대비하여 with문을 사용할 것을 권장하고 있습니다. with 문은 아래와 같은 방식으로 사용합니다.
with file = open("텍스트파일.txt", "r") # "r"은 read를 의미합니다.
data = file.read()
with file = open("새파일.txt", "w") # "w"는 write를 의미합니다.
file.write("파이썬으로 파일 쓰기 예제입니다.")
with 문을 사용하면 파일을 close() 하지 않아도 with 블록을 벗어나면 자동으로 파일이 닫치게 됩니다. 이를 통해 좀 더 간결하고 보기 좋은 코드를 작성 할 수 있습니다.
3. 마무리
파이썬의 표준 입출력은 데이터 처리와 사용자 인터페이스를 다룰 때 핵심적인 역할을 합니다. 사용자 입력을 받고 결과를 출력함으로써 파이썬 프로그램을 보다 유용하게 만들 수 있으며, 파일 입출력을 통해 데이터를 파일로 저장하거나 읽어올 수 있습니다. 오늘 배운 기능들을 잘 활용하여 보시기 바랍니다.
감사합니다.
“끝”