input 함수
input 함수는 사용자(개발자)로부터 키보드 입력을 받는데 사용되는 내장 함수.
프로그램 실행 중에 사용자가 값을 입력하면, 입력한 값이 문자열로 반환되어 변수에 저장하거나 처리할 수 있음.
input()
name = input('이름을 입력하세요')
print(f'{name}님 안녕하세요!)
# 실행 시 '이름을 입력하세요'가 터미널 창에서 출력되고 이름을 입력시 {name}님 안녕하세요! 가 출력
name, age, weight = input('이름, 나이, 몸무게를 차례대로 입력하세요').split(' ')
print(name)
print(age)
print(weight)
# 한줄로도 입력을 받을 수 있고, 정보 입력 시 각각의 변수가 출력됨.
num1 = input('첫번째 숫자를 입력하세요')
num2 = input('두번째 숫자를 입력하세요')
print('결과: ', num1 + num2) # 105
# input은 문자열로 반환되기 때문에 105라는 결과값 출력
num1 = input('첫번째 숫자를 입력하세요') # int(input('첫번째 숫자를 입력하세요'))와 같음
num2 = input('두번째 숫자를 입력하세요')
print('결과: ', int(num1) + int(num2)) # 15
# 덧셈을 위해 정수형으로 변환 후 진행
print 함수
print 함수는 콘솔에 출력을 표시하는 가장 기본적인 함수.
프로그램 실행 중 생성된 값을 사용자에게 보여주거나 디버깅할 때 매우 유용.
(function) def print(
*values: object,
sep: str | None = " ",
end: str | None = "\n",
file: SupportsWrite[str] | None = None,
flush: Literal[False] = False
) -> None
1. *values: object (출력할 값들)
- 역할 : 출력하고 싶은 내용물.
- 특징: 앞에 붙은( * )는 가변 인자(Arbitrary Arguments)를 뜻함. 즉, 개수 제한 없이 콤마 ( , )로 구분해서 값을 몇 개든 넘길 수 있음. object 타입이기 때문에 숫자, 문자, 리스트 등 파이썬의 어떤 객체든 다 들어올 수 있음.
print("안녕", 123, True) # 3개의 값을 동시에 출력
2. sep : str | None = " " (구분자)
- 역할 : *values로 전달된 값과 값 사이에 무엇을 집어넣을지 결정. 기본값(Default)은 공백 한 칸( " " )
- 활용 : 값 사이를 콤마나 줄바꿈으로 변경하고 싶을 때 유용.
print("apple", "banana", "cherry", sep=", ")
# 출력 : apple, banana, cherry
print("010", "1234", "5678", sep="-")
# 출력 : 010-1234-5678
3. end : str | None = "\n" (끝 문자)
- 역할 : 모든 값을 다 출력한 후 맨 마지막에 무엇을 붙이고 마칠지 결정함. 기본값은 줄바꿈 문자( \n ). print()를 쓸 때마다 자동으로 다음 줄로 넘어갔던 이유.
- 활용 : 줄바꿈을 하지 않고 다음 print() 문을 옆으로 이어 붙이고 싶을 때 빈 문자열 ( "" )을 줌.
print("안녕", end=" ")
print("하세요")
# 출력 : 안녕하세요 (한 줄에 출력됨)
4. file : SupportsWrite[str] | None = None (출력 대상)
- 역할 : 값을 어디로 보낼지(출력할지) 지정. 기본값은 None 인데, 이 경우 우리 눈에 보이는 표준 출력(콘솔창/모니터)으로 보냄.
- 활용 : 화면이 아니라 텍스트 파일에 직접 글자를 쓰고 싶을 때 파일 객체를 넘겨줄 수 있음.
with open("text.txt", "w") as f:
print("파일에 저장됩니다.", file=f)
# 콘솔에는 아무것도 안 나오고, test.txt 파일 안에 글이 작성됨
5. flush : Literal[False] = False (버퍼 비우기 여부)
- 역할 : 출력할 데이터를 버퍼(임시 메모리)에 쌓아두지 않고 즉시 출력 장치로 밀어낼지 여부를 결정. 기본값은 False(즉시 밀어내지 않음)
- 배경 지식 : 컴퓨터는 효율성을 위해 글자가 생길 때마다 화면에 그리는 게 아니라, 버퍼에 어느정도 모았다가 한 번에 출력함.
- 활용 : flush=True 로 설정하면 버퍼가 차는 것을 기다리지 않고 강제로 즉시 화면에 출력함.
이스케이프 문자
문자열 내에서 특수한 기능을 수행하도록 하는 문자. 백슬래시 ( \ )로 시작하며, 그 뒤에 이어지는 문자가 특정한 기능을 수행함.
- \n : 줄바꿈
- \t : 탭
- \\ : 백슬래시 자체. 디렉토리 주소에 많이 사용.
- " 또는 ' : 큰따옴표나 작은따옴표를 나타냄. 문자열을 감싸는 따옴표와 구분하기 위해 사용. 파이썬은 ",' 모두 사용이 가능하므로 겹치지 않도록 사용하면 됨.
- \r : 캐리지 리턴. 문자열을 출력한 후 커서를 줄의 처음으로 이동.
- \b : 백스페이스. 문자열 내에서 한 글자를 삭제.
출력서식 지정
1. % 서식 지정자
- %s : 문자열
- %d : 정수
- %f : 실수
- %x : 16진수
num = 255
pi = 3.141592
name = '김사과'
print('문자열 출력: %s' % name) # &S
print('정수 출력: %d' % num) # %d
print('실수 출력: %f' % pi) # %f
print('소수점 자리 지정: %.2f' % pi) # %.mf
print('16진수 출력: %x' % num) # %x
print('0 채움 정수: %05d' % 42) # 0n
print('여러 값 출력: %s %d %.2f' % (name, num, pi)) # 여러 값
'''
문자열 출력: 김사과
정수 출력: 255
실수 출력: 3.141592
소수점 자리 지정: 3.14
16진수 출력: ff
0 채움 정수: 00042
여러 값 출력 : 김사과 255 3.14
'''
2. str.format() 메서드
- { } : 중괄호 안에 변수나 표현식을 넣어 값을 출력.
- {:d} : 정수를 출력
- {:f} : 부동 소수점 숫자를 출력
- {:s} : 문자열을 출력
- {:x} : 정수를 16진수로 출력
- {:0n} : n 자리의 정수를 0으로 채워서 출력
- {:n.mf} : 전체 길이 n과 소수점 이하 자리수 m을 지정하여 부동 소수점 숫자를 출력.
num = 255
pi = 3.141592
name = "김사과"
print("기본 출력: {}".format(name)) # {}
print("정수 출력: {:d}".format(num)) # {:d}
print("실수 출력: {:f}".format(pi)) # {:f}
print("문자열 출력: {:s}".format(name)) # {:s}
print("16진수 출력: {:x}".format(num)) # {:x}
print("0 채움 정수: {:05d}".format(42)) # {:0n}
print("소수점 자리 지정: {:.2f}".format(pi)) # {:.mf}
print("전체 길이 + 소수점: {:10.2f}".format(pi)) # {:n.mf}
'''
기본 출력: 김사과
정수 출력: 255
실수 출력: 3.141592
문자열 출력: 김사과
16진수 출력: ff
0 채움 정수: 00042
소수점 자리 지정: 3.14
전체 길이 + 소수점: 3.14
'''
3. f-string
f-string은 가장 직관적이고 간편한 방식. 문자열 앞에 f를 붙이고 중괄호 { }안에 변수를 넣어 사용.
name = '김사과'
age = 20
print(f'이름은 {name}이고 나이는 {age}입니다.')
# 이름은 김사과이고 나이는 20입니다.
a = 10
b = 20
pi = 3.141592
print(f'{a} + {b} = {a + b}') # 10 + 20 = 30
print(f'{pi}를 소수 둘째자리까지 표현 {pi:.2f}') # 3.141592를 소수 둘째자리까지 표현 3.14
name = 김사과
print('기본 출력: ' + name)
print('기본 출력: {}'.format(name))
print(f'기본 출력: {name}')
# 세가지 모두 기본 출력: 김사과 라는 값이 출력되지만 f-string이 가장 간편함.'Python' 카테고리의 다른 글
| 리스트의 함수와 메서드 (0) | 2026.05.22 |
|---|---|
| 컬렉션 타입 (리스트) (0) | 2026.05.22 |
| 연산자 (0) | 2026.05.22 |
| 파이썬 변수, 문자열 다루기 (0) | 2026.05.21 |
| Python 시작과 개발환경 구축, 하드웨어와 메모리 (0) | 2026.05.20 |