정처기 감자정처기 감자
Python함수/클래스

검색

검색어를 입력해 개념, 문제, 필기를 찾습니다.

Python 출력 함수 - print()

코딩Python
읽는데 12분 소요
처음 쓰인 날: 2026-04-08
마지막 수정일: 2026-09-29
조회수: —
선수학습(1개)
  • Python 자료형(int, float, str, tuple)

요약

Python의 print() 함수 사용법을 정리합니다. 여러 인자 출력과 sep 매개변수, end 매개변수로 줄바꿈 제어, f-string과 % 포맷팅, 포맷 지정자(:2d·:.2f·:<5·:>5)의 폭과 공백, 인접 문자열 자동 결합까지 정보처리기사 실기 기출에 나온 출력 패턴을 다룹니다.

print() 함수 핵심 정리

기능설명예시
기본 출력값을 출력하고 끝에 자동 줄바꿈print("A")
여러 인자쉼표로 구분 → 사이에 공백 한 칸 삽입print("x", 1) → x 1
sep 매개변수인자 사이 구분자 변경print("a", "b", sep=",") → a,b
end 매개변수끝에 붙일 문자 변경print("A", end="")
빈 print()아무 값 없이 줄바꿈만 출력print()
f-string 결합중괄호 안의 값이 치환print(f"값:{v}")
인접 문자열 결합리터럴1 두 개가 나란히 → 자동 연결print("A" "B") → AB
% 포맷팅자리표시자에 값 대입print("%s" % "hi")

print()의 기본 동작

Python에서 화면에 값을 출력할 때 사용하는 함수가 print()입니다. 큰따옴표든 작은따옴표든 상관없이 괄호 안에 넣은 값을 그대로 화면에 내보냅니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

숫자나 변수도 그대로 출력할 수 있습니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

자동 줄바꿈

print()는 출력 후 자동으로 줄바꿈을 추가합니다. print 여러 개를 연속으로 호출하면 각 출력이 새 줄에서 시작합니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

이 자동 줄바꿈은 뒤에서 배울 end 매개변수로 제어할 수 있습니다.


여러 인자 출력과 sep 매개변수

쉼표로 값 나열

여러 값을 한 번에 출력할 때는 쉼표(,)로 나열합니다. 파이썬은 각 값 사이에 공백 한 칸을 자동으로 끼워 넣습니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

문자열이든 숫자든 자료형이 달라도 섞어서 전달할 수 있습니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

여기서 주목할 점은 'a='와 num1 사이에 원래 공백이 없었는데도 결과에는 a= 20처럼 공백이 한 칸 끼어 들어간다는 것입니다. 이는 print가 각 인자 사이에 자동으로 공백을 넣기 때문입니다.

sep 매개변수로 구분자 바꾸기

인자 사이에 들어가는 구분자는 sep 매개변수로 바꿀 수 있습니다. 기본값은 공백(" ") 한 칸입니다.

사용법결과
print("A", "B", "C")A B C (기본 공백)
print("A", "B", "C", sep="")ABC (구분 없음)
print("A", "B", "C", sep=",")A,B,C
print("A", "B", "C", sep="-")A-B-C
python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…
쉼표로 나열하면 기본 공백이 끼어듭니다
print('a=', 5) 같은 코드에서 답에 a=5 라고 쓰면 오답입니다. 실제 출력은 a= 5 (등호와 5 사이에 공백 한 칸)입니다. 기출에서 자주 틀리는 부분이니 반드시 확인하세요.

end 매개변수와 빈 print()

end 매개변수

print()는 기본적으로 출력 후 줄바꿈 문자를 끝에 붙입니다. end 매개변수로 이 끝 문자를 다른 값으로 바꿀 수 있습니다.

사용법줄바꿈뒤에 오는 문자
print("A")있음(줄바꿈으로 다음 줄)
print("A", end="")없음바로 다음 출력이 이어짐
print("A", end=" ")없음공백 한 칸 후 이어짐
print("A", end=",")없음쉼표 후 이어짐
python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…
python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

빈 print()로 줄바꿈만 출력

아무 인자 없이 print()만 호출하면 자동 줄바꿈 동작만 남아 빈 줄(줄바꿈 한 번)만 출력됩니다. 중첩 for문에서 안쪽 반복이 끝날 때 줄을 바꾸는 용도로 자주 쓰입니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

안쪽 for문은 end="" 덕분에 숫자를 공백 없이 이어 붙여 한 줄을 만들고, 안쪽 for문이 끝난 뒤의 print()가 줄바꿈을 찍어 다음 반복이 새 줄에서 시작하게 합니다.

end 매개변수는 한 글자도 놓치면 오답입니다
end="" 는 줄바꿈 제거, end=" " 는 공백 한 칸, end="," 는 쉼표로 끝을 바꿉니다. 기출에서는 정답에 공백이나 줄바꿈이 있는지를 묻는 경우가 많으니 end 값을 반드시 확인하세요.

f-string으로 값 삽입하기

f-string은 문자열 앞에 f를 붙인 형태로, 중괄호 {} 안에 있는 표현식을 실행 시 그 값으로 치환합니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

중괄호 안에는 변수뿐 아니라 계산식이나 함수 호출도 쓸 수 있습니다. 출력 직전에 먼저 계산한 결과가 들어갑니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…
python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

인접 문자열 자동 결합

파이썬은 두 개의 문자열 리터럴이 공백으로만 나란히 있을 때 + 연산자 없이도 자동으로 하나의 문자열로 결합합니다. 일반 문자열끼리든, f-string끼리든, 혼합이든 모두 가능합니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

f-string도 예외가 아닙니다. 기출에서는 이 규칙이 print 한 줄 안에서 등장하는 경우가 있습니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

위 print 안에는 f-string 두 개가 공백으로 나란히 있습니다. 파이썬은 먼저 각 f-string을 계산한 뒤("ab3", "ca3") 두 결과를 이어 붙여 "ab3ca3"으로 출력합니다.

인접 문자열 결합은 리터럴끼리만 가능합니다
이 결합 규칙은 코드에 따옴표로 직접 적은 문자열 리터럴('b' 같은 값 그 자체, 또는 f-string)에만 적용됩니다. 변수 a와 문자열 'b'를 a 'b' 처럼 적으면 SyntaxError가 납니다. 변수와 합치려면 + 연산자나 f-string을 사용하세요.

f-string 포맷 지정자 심화

f-string의 중괄호 안에서 변수 뒤에 콜론(:) 을 찍고 포맷 지정자를 쓰면 폭·소수점 자리·정렬을 세밀하게 조절할 수 있습니다. {값:포맷} 형태입니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

출력 앞뒤의 대괄호 [ ]는 공백이 몇 칸 들어갔는지 눈으로 보이게 하려고 함께 찍은 표시입니다. 대괄호 안쪽이 포맷 지정자가 만든 결과입니다.

폭(width) 지정

정수와 문자열 모두 :{숫자} 형태로 최소 폭을 지정할 수 있습니다. 값이 폭보다 짧으면 남는 자리가 생기고, 폭보다 길면 그대로 출력됩니다.

python
코드 하이라이팅 중…
f-string 폭 지정 {7:5d}, {123:5d}, {12345:5d}, {7:04d}를 한 글자 한 칸 격자로 비교한 그림. 폭 5 칸에 숫자를 오른쪽 정렬하고 남는 칸은 공백, 12345는 폭 5를 꽉 채워 그대로, {7:04d}는 폭 4 칸의 빈자리를 0으로 채워 0007
폭은 최소 칸 수입니다. 숫자는 오른쪽에 붙고 남는 칸은 공백이 되며, 0을 붙이면 공백 대신 0으로 채웁니다
출력
코드 하이라이팅 중…

소수점 자리 — :.Nf

.(점) 뒤의 숫자는 소수점 이하 자리수를 뜻합니다. 자리수에 맞춰 반올림됩니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

:.2f 는 "소수점 둘째 자리까지 표시하는 실수"라는 뜻입니다. :8.2f처럼 폭과 자리수를 같이 쓸 수도 있습니다.

정렬 — :<, :>, :^

콜론 뒤에 정렬 기호를 쓰면 값을 왼쪽/오른쪽/가운데로 맞출 수 있습니다. 기호 뒤의 숫자는 값과 공백을 합친 최소 폭입니다. 예를 들어 A는 한 칸이므로 폭이 5라면 나머지 네 칸을 공백으로 채웁니다.

기호의미예시 (· = 공백 한 칸)
<왼쪽 정렬f"{'A':<5}" → "A····"
>오른쪽 정렬f"{'A':>5}" → "····A"
^가운데 정렬f"{'A':^5}" → "··A··"

표의 ·는 출력되는 문자가 아니라 공백을 눈으로 구분하기 위한 표시입니다. 실제 출력에서는 아래 코드처럼 빈칸으로 나타납니다.

python
코드 하이라이팅 중…
정렬 기호 <, >, ^에 따라 폭 5칸 격자에서 A가 왼쪽, 오른쪽, 가운데에 놓이고 나머지 네 칸이 공백으로 채워지는 모습
기호 뒤 숫자 5는 값과 공백을 합친 폭입니다. A 한 칸을 뺀 나머지 네 칸은 공백으로 채워집니다
출력
코드 하이라이팅 중…

정수는 기본이 오른쪽 정렬이고, 문자열은 기본이 왼쪽 정렬입니다. 명시적으로 <·>·^를 써 주는 쪽이 시험에서 혼동을 줄입니다.

print 표 출력 결합

폭·정렬·소수점 지정자를 섞어서 표를 예쁘게 찍을 수 있습니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

출력을 한 글자씩 칸에 나눠 넣으면 다음과 같습니다(· = 공백 한 칸). 화면 글꼴에서는 한글이 영문보다 넓게 그려져 위 출력의 줄이 어긋나 보이지만, Python은 한글도 한 글자를 한 칸으로 셉니다. 1 ~ 4칸은 이름(:<4), 5 ~ 9칸은 점수(:>5d), 10 ~ 16칸은 평점(:>7.2f) 구간이고, 모든 줄이 정확히 16칸입니다.

줄12345678910111213141516
1이름·····점수·····평점
2감자·····90···3.15
3당근·····85···2.70
4양파····100···4.00

첫 줄의 공백을 ·로 표시하면 이름·····점수·····평점입니다. 이름은 2글자이므로 {'이름':<4}의 폭 4에서 2칸이 남고, 점수도 2글자이므로 {'점수':>5}의 폭 5에서 3칸이 남습니다. 이름 뒤의 2칸과 점수 앞의 3칸이 이어져 두 값 사이에는 총 5칸이 들어갑니다.

자리포맷의미
이름:<4왼쪽 정렬, 폭 4
점수:>5d오른쪽 정렬 정수, 폭 5
평점:>7.2f오른쪽 정렬 실수, 폭 7, 소수점 이하 2자리
콜론 위치에 주의하세요
포맷 지정자는 반드시 콜론(:) 뒤에 옵니다. {x .2f}처럼 콜론 없이 공백을 쓰면 SyntaxError가 나서 프로그램이 아예 실행되지 않습니다. 또한 {x:.2f}와 {x:2.0f}의 결과가 전혀 다른 만큼 '폭 vs 소수점 자리수'를 구분해 외워두세요.

% 포맷팅

% 포맷팅은 문자열 안에 자리표시자(%s, %d, %f)를 두고 % 연산자 오른쪽 값으로 채우는 옛 방식의 문법입니다. C언어의 printf 서식 지정자와 같은 스타일입니다.

자리표시자의미받는 값
%sstring문자열
%ddigit정수
%ffloat실수
python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…
python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

값이 여러 개일 때는 튜플로 묶어서 전달합니다.

python
코드 하이라이팅 중…
출력
코드 하이라이팅 중…

% 포맷팅과 문자열 연결

% 포맷팅은 결과적으로 새 문자열을 만들기 때문에, print와 결합할 때 문자열 연결(+)과 함께 사용되는 경우가 있습니다.

python
코드 하이라이팅 중…
a 문자열 17칸에서 a[:3]의 REM과 a[12:16]의 EMBE를 잘라 b를 만들고, R AND %s의 %s 자리에 STR을 채워 c를 만든 뒤, b + c로 이어 붙여 REMEMBER AND STR이 출력되는 과정
잘라 낸 REMEMBE 뒤에 % 포맷팅으로 만든 R AND STR이 붙으면서, 경계의 E와 R이 이어져 REMEMBER가 완성됩니다
출력
코드 하이라이팅 중…

b + c에서 c의 첫 글자 R이 b의 끝 REMEMBE에 붙으면서 REMEMBER가 자연스럽게 완성됩니다.

% 포맷팅과 f-string의 차이
% 포맷팅은 옛 방식이고, f-string은 파이썬 3.6 이후의 새 방식입니다. 기출에서는 두 방식이 모두 출제되므로, 자리표시자(%s, %d, %f)와 f-string(f 접두사와 중괄호 {}) 두 가지 모두 읽을 줄 알아야 합니다.

정보처리기사 실기 기출 문제

문제를 불러오는 중이에요.
문제를 불러오는 중이에요.
문제를 불러오는 중이에요.
문제를 불러오는 중이에요.
문제를 불러오는 중이에요.

Footnotes

  1. 리터럴(literal): 코드에 값을 직접 적은 것입니다. "abc", 'b'처럼 따옴표로 적은 문자열이 문자열 리터럴이고, 그 값을 담아 둔 변수 s는 리터럴이 아닙니다. ↩


메가커피와 함께, 홈페이지 개선에 참여하세요! ☕
혹시 이용에 불편한 점이나 개선이 필요한 부분을 발견하셨나요? 댓글로 알려주시면 더 나은 감자가 될 수 있어요! 🥔 제보해주신 모든 분께 메가커피 기프티콘을 드립니다! (본인 이메일로 댓글 달아주셔야해요~)
후수학습(1개)
  • 함수의 기초
정처기 감자정처기 감자

정보처리기사 합격
도와줄라고 하는 감자

실기 이론

  • 이론 공부법
  • DB
  • 네트워크/OS
  • SW 설계
  • SW 개발
  • 보안/신기술

시험 응시

  • 시험장 찾기
  • 원서 접수
  • 응시자격 서류

요약 PDF

  • 26년 3회 이론 압축
  • 26년 3회 코딩 압축
  • 초압축 25년 3회
  • 압축 25년 3회

기출문제

  • 전체 기출문제
  • 25년 3회
  • 25년 2회
  • 문제 포럼

감자 이용권

  • 이용권 구매

실기 이론

  • 이론 공부법
  • DB
  • 네트워크/OS
  • SW 설계
  • SW 개발
  • 보안/신기술

시험 응시

  • 시험장 찾기
  • 원서 접수
  • 응시자격 서류

요약 PDF

  • 26년 3회 이론 압축
  • 26년 3회 코딩 압축
  • 초압축 25년 3회
  • 압축 25년 3회

기출문제

  • 전체 기출문제
  • 25년 3회
  • 25년 2회
  • 문제 포럼

감자 이용권

  • 이용권 구매
© 2025 재현기획개발. All rights reserved.
  • 정처기 감자의 시작
  • 업데이트 로그
  • 개인정보 처리방침
  • 이용약관
상호명 : 재현기획개발 / 주소: 서울특별시 영등포구 영등포로 150, 지하1층 108호 L145 가라지(당산동1가, 생각공장 당산) / 대표: 김재현 / 전화: 010-8158-7127 / 통신판매업신고: 제2025-서울영등포-1569호 / 이메일: contact@edugamja.com / 사업자등록번호: 573-51-00999