본문으로 바로 가기

프로그래밍기능사 필기 · 프로그래밍 언어 과목

AI 작성 · 운영진 검수 전

프로그래밍기능사 파이썬 핵심정리

중요도
★★★★★ (5 / 5)
출제 비중
프로그래밍 언어 15문항 중 약 5문항 (30%)

파이썬의 자료형(리스트·튜플·딕셔너리), 슬라이싱, 반복문과 함수를 다룹니다.

📖 파이썬 개념 정리 보기 →

파이썬, 이것만은 꼭 외우세요

  • range(1, 5) 는 1, 2, 3, 4 를 만듭니다.
  • 리스트는 고칠 수 있고 튜플은 고칠 수 없습니다.

파이썬 대표 문제 6개

예상문제검수 완료프로그래밍 언어 › 파이썬★★★★★

문제 1. 다음 파이썬 코드의 출력 결과는? print(10 // 3, 10 % 3, 2 ** 3)

  1. ① 1 3 8
  2. ② 3 1 8
  3. ③ 3.3333333333333335 1 8
  4. ④ 3 1 6
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ② 3 1 8

핵심: // 는 몫, % 는 나머지, ** 는 거듭제곱

  1. 10 // 3 → 10 을 3 으로 나눈 몫 → 3
  2. 10 % 3 → 나머지 → 1
  3. 2 ** 3 → 2 × 2 × 2 = 8
  4. print 는 값 사이에 빈칸을 넣어 출력: 3 1 8

틀린 선지

  • ① 1 3 8: 몫과 나머지가 바뀌었습니다.
  • ③ 3.3333333333333335 1 8: // 는 몫만 구하는 정수 나눗셈입니다. 소수가 나오는 것은 / 입니다.
  • ④ 3 1 6: ** 는 거듭제곱입니다. 2 × 3 이 아니라 2 × 2 × 2 입니다.
예상문제검수 완료프로그래밍 언어 › 파이썬★★★★★

문제 2. 다음 파이썬 코드의 출력 결과는? a = [1, 2, 3] a.append(4) print(len(a))

  1. ① 10
  2. ② 3
  3. ③ [1, 2, 3, 4]
  4. ④ 4
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ④ 4

핵심: append 는 리스트 끝에 추가, len 은 개수를 센다

  1. a = [1, 2, 3]
  2. a.append(4) → 끝에 4 를 붙여 a = [1, 2, 3, 4]
  3. len(a) 는 원소의 개수 → 4
  4. 출력: 4

틀린 선지

  • ① 10: len 은 원소의 합이 아니라 개수를 구합니다.
  • ② 3: append(4) 로 원소가 하나 늘어났습니다.
  • ③ [1, 2, 3, 4]: 리스트 자체가 아니라 길이(개수)를 출력합니다.
예상문제검수 완료프로그래밍 언어 › 파이썬★★★★★

문제 3. 다음 파이썬 코드의 출력 결과는? s = "hello" print(s[-1])

  1. ① 오류
  2. ② l
  3. ③ o
  4. ④ h
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ③ o

핵심: 파이썬에서 [-1] 은 맨 마지막 원소

파이썬은 뒤에서부터 셀 때 음수 번호를 씁니다. -1 은 맨 마지막 글자입니다.

  1. "hello" 의 마지막 글자: o
  2. 출력: o

틀린 선지

  • ① 오류: 파이썬은 음수 번호를 쓸 수 있어 오류가 나지 않습니다.
  • ② l: s[-2] 의 값입니다.
  • ④ h: s[0] 의 값입니다. -1 은 맨 뒤를 뜻합니다.
예상문제검수 완료프로그래밍 언어 › 파이썬★★★★★

문제 4. 다음 파이썬 코드의 출력 결과는? d = {'a': 1, 'b': 2} d['c'] = 3 print(sum(d.values()))

  1. ① abc
  2. ② 3
  3. ③ 오류
  4. ④ 6
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ④ 6

핵심: 딕셔너리에 새 키로 넣으면 항목이 추가된다

딕셔너리는 '키: 값' 쌍으로 자료를 저장합니다.

  1. 처음: {'a': 1, 'b': 2}
  2. d['c'] = 3 → 'c': 3 이 추가됨
  3. d.values() → 1, 2, 3
  4. sum → 1 + 2 + 3 = 6
  5. 출력: 6

틀린 선지

  • ① abc: values() 는 키가 아니라 값을 가져옵니다.
  • ② 3: 새로 넣은 'c' 의 값 3 만 본 것입니다. values() 는 모든 값을 가져옵니다.
  • ③ 오류: 없는 키에 값을 넣으면 새 항목이 추가될 뿐 오류가 나지 않습니다.
예상문제검수 완료프로그래밍 언어 › 파이썬★★★★★

문제 5. 다음 파이썬 코드의 출력 결과는? def f(n): if n <= 1: return 1 return n * f(n - 1) print(f(4))

  1. ① 4
  2. ② 24
  3. ③ 10
  4. ④ 12
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ② 24

핵심: 재귀 함수로 4! = 4×3×2×1 = 24 를 구한다

함수 f 는 자기 자신을 다시 부르는 재귀 함수로, 팩토리얼(n!)을 구합니다.

  1. f(4) = 4 × f(3)
  2. f(3) = 3 × f(2)
  3. f(2) = 2 × f(1)
  4. f(1) = 1 (n <= 1)
  5. 거꾸로 계산: 2 × 1 = 2 → 3 × 2 = 6 → 4 × 6 = 24
  6. 출력: 24

틀린 선지

  • ① 4: 함수가 자기 자신을 다시 부르며(재귀) 계속 곱합니다.
  • ③ 10: 곱하기가 아니라 4 + 3 + 2 + 1 처럼 더한 값입니다.
  • ④ 12: 4 × 3 에서 멈춘 값입니다. f(2) = 2 까지 이어서 곱합니다.
예상문제검수 완료프로그래밍 언어 › 파이썬★★★★☆

문제 6. 다음 파이썬 코드의 출력 결과는? print([x * x for x in range(1, 6) if x % 2 == 1])

  1. ① [4, 16]
  2. ② [1, 9, 25, 49]
  3. ③ [1, 4, 9, 16, 25]
  4. ④ [1, 9, 25]
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ④ [1, 9, 25]

핵심: 리스트 컴프리헨션: 조건에 맞는 값만 골라 계산한다

대괄호 안의 for 와 if 로 새 리스트를 만드는 문법입니다.

  1. range(1, 6) → 1, 2, 3, 4, 5
  2. x % 2 == 1 (홀수) → 1, 3, 5
  3. 각각 제곱: 1, 9, 25
  4. 출력: [1, 9, 25]

틀린 선지

  • ① [4, 16]: x % 2 == 1 은 홀수만 고르는 조건입니다. 짝수의 제곱입니다.
  • ② [1, 9, 25, 49]: range(1, 6) 은 1~5 이므로 7 은 들어가지 않습니다.
  • ③ [1, 4, 9, 16, 25]: if 조건으로 홀수만 고른다는 점을 빠뜨렸습니다.

직접 풀어서 확인해 보세요.