본문 바로가기
방통대

방통대 파이썬 프로그래밍 기말시험 대비 예상 기출문제

by 4.5/4.5 2024. 6. 2.
반응형

파이썬 프로그래밍 기말시험 대비 연습 문제 

 

 

 

1. 데이터와 정보의 차이점에 대해 옳은 것은?

1. 데이터는 가공된 정보이며, 정보는 가공되지 않은 원천 자료이다.
2. 데이터는 문제 해결을 위해 가공된 정보이며, 정보는 단순한 관찰이나 측정의 결과이다.
3. 데이터는 관찰이나 측정을 통해 얻은 원천 자료이며, 정보는 문제 해결을 위해 가공된 데이터이다.
4. 데이터와 정보는 같은 의미로 사용된다.

정답: 3

해설: 데이터는 관찰이나 측정을 통해 얻은 원천 자료이며, 정보는 문제 해결을 위해 데이터를 가공한 결과입니다.

2. 컴퓨터의 기본 단위인 비트(bit)와 바이트(byte)에 대해 올바르게 설명한 것은?

1. 비트는 8개의 바이트로 구성된다.
2. 바이트는 2개의 비트로 구성된다.
3. 비트는 컴퓨터의 기본 단위이며, 바이트는 8개의 비트로 구성된다.
4. 바이트는 컴퓨터의 기본 단위이며, 비트는 4개의 바이트로 구성된다.

정답: 3

해설: 비트(bit)는 컴퓨터의 가장 작은 데이터 단위이며, 바이트(byte)는 8개의 비트로 구성됩니다.

3. 프로그래밍 언어의 세대 구분에 대한 설명으로 옳지 않은 것은?

1. 1세대 언어는 기계어로 구성된다.
2. 2세대 언어는 어셈블리어를 포함한다.
3. 3세대 언어에는 Python, C, Java 등이 포함된다.
4. 4세대 언어는 자연어와 유사하지 않다.

정답: 4

해설: 4세대 언어는 자연어와 유사하여 사용자가 더 쉽게 이해하고 사용할 수 있도록 설계된 언어입니다.

4. 다음 중 컴퓨터가 데이터를 표현하고 처리하는 방식으로 올바른 것은?

1. 컴퓨터는 데이터를 아날로그 방식으로만 처리한다.
2. 컴퓨터는 데이터를 디지털 방식으로만 처리한다.
3. 컴퓨터는 데이터를 아날로그와 디지털 방식 모두로 처리한다.
4. 컴퓨터는 데이터를 10진법으로만 표현한다.

정답: 3

해설: 컴퓨터는 데이터를 아날로그와 디지털 방식 모두로 처리할 수 있습니다. 아날로그 데이터는 연속적인 값으로, 디지털 데이터는 이산적인 값으로 표현됩니다

 


5. 컴퓨터에서 아날로그 데이터와 디지털 데이터를 처리하는 방식에 대한 설명으로 옳은 것은?

1. 아날로그 데이터는 이산적인 값으로 표현되며, 디지털 데이터는 연속적인 값으로 표현된다.
2. 아날로그 데이터는 연속적인 물리량 값으로 표현되며, 디지털 데이터는 이산적인 값으로 표현된다.
3. 디지털 데이터는 연속적인 값으로 표현되며, 아날로그 데이터는 이산적인 값으로 표현된다.
4. 아날로그 데이터와 디지털 데이터는 모두 이산적인 값으로 표현된다.

정답: 2

해설: 아날로그 데이터는 연속적인 물리량 값으로 표현되며, 디지털 데이터는 이산적인 값으로 근사하여 표현됩니다.

6. 컴퓨터의 데이터 표현 방식에 대한 설명으로 옳지 않은 것은?

1. 컴퓨터는 트랜지스터를 통해 2진법 숫자로 데이터를 표현하여 저장 및 처리한다.
2. 2진법은 숫자를 0과 1의 조합으로 표현한다.
3. 컴퓨터는 데이터를 표현할 때 주로 10진법을 사용한다.
4. 데이터는 비트와 바이트 단위로 구성된다.

정답: 3

해설: 컴퓨터는 데이터를 표현할 때 주로 2진법을 사용합니다.

7. 다음 중 프로그래밍 언어의 실행 방식에 대한 설명으로 옳은 것은?

1. 모든 프로그래밍 언어는 컴파일러를 통해서만 실행된다.
2. 고급 언어로 작성된 프로그램은 기계어로 변환되어야 컴퓨터에서 실행될 수 있다.
3. 인터프리터는 프로그램을 기계어로 변환하지 않고 직접 실행한다.
4. 컴파일러는 프로그램을 한 줄씩 해석하여 실행한다.

정답: 2

해설: 고급 언어로 작성된 프로그램은 기계어로 변환되어야 컴퓨터에서 실행될 수 있습니다.

8. ASCII 코드에 대한 설명으로 옳은 것은?

1. ASCII 코드는 컴퓨터가 숫자 데이터를 표현하는 방식이다.
2. ASCII 코드는 모든 종류의 데이터를 2진법으로 변환하는 체계이다.
3. ASCII 코드는 주로 텍스트 데이터를 2진법으로 표현하는 표준 코드 체계이다.
4. ASCII 코드는 고급 프로그래밍 언어의 문법을 정의한다.

정답: 3

해설: ASCII 코드는 주로 텍스트 데이터를 2진법으로 표현하는 표준 코드 체계입니다.

 

 

9. 다음 중 정보의 개념에 대한 설명으로 옳은 것은?

1. 관찰이나 측정을 통해 얻은 모든 데이터를 정보라고 한다.
2. 정보는 처리와 가공을 통해 문제 해결에 도움이 되는 데이터 또는 결과물이다.
3. 데이터는 정렬, 합산 등의 과정을 거쳐 정보로 변환되지 않는다.
4. 정보를 얻기 위해서는 데이터를 반드시 수동으로 분석해야 한다.

정답: 2

해설: 정보는 관찰과 측정을 통해 얻은 데이터를 처리하고 가공하여 실제 문제 해결에 도움이 되는 데이터 또는 결과물을 의미합니다.

 


10. 다음 중 컴퓨터의 정의로 가장 적절한 것은?

1. 데이터를 자동으로 생성하는 기계
2. 사람이 입력한 데이터를 수동으로 처리하는 기계
3. 입력된 데이터를 자동으로 처리하여 정보를 생산하는 기계
4. 데이터를 물리적으로 저장하는 기계

정답: 3

해설: 컴퓨터는 정의된 방법에 따라 입력된 데이터를 자동으로 처리하여 정보를 생산하는 기계입니다.

 


11. 다음 중 컴퓨터에서 사용되는 2진법에 대한 설명으로 옳은 것은?

1. 컴퓨터는 데이터를 표현할 때 주로 10진법을 사용한다.
2. 2진법은 숫자를 0과 1의 조합으로 표현한다.
3. 컴퓨터는 트랜지스터를 통해 10진법 숫자로 데이터를 표현한다.
4. 2진법은 데이터를 표현하기에 적합하지 않다.

정답: 2

해설: 2진법은 숫자를 0과 1의 조합으로 표현하며, 컴퓨터는 트랜지스터를 통해 2진법 숫자로 데이터를 표현하여 저장 및 처리합니다.

 

12. 다음 중 아날로그와 디지털의 차이에 대한 설명으로 옳지 않은 것은?

1. 아날로그는 연속적인 물리량 값으로 사물이나 개념을 표현한다.
2. 디지털은 이산적인 값으로 사물이나 개념을 근사하여 표현한다.
3. 아날로그는 양적 데이터로만 표현된다.
4. 디지털은 양적 데이터로 표현된다.

정답: 3

해설: 아날로그는 연속적인 물리량 값으로 사물이나 개념을 표현하며, 질적 데이터 또는 양적 데이터로 표현할 수 있습니다.

 


13. 다음 중 하드웨어의 구성 요소에 대한 설명으로 옳지 않은 것은?

1) 입력 장치는 명령과 데이터를 컴퓨터에 전달하는 장치이다.
2) 출력 장치는 처리된 데이터를 사람이 인식할 수 있는 형태로 변환한다.
3) 기억 장치는 명령과 데이터를 저장하는 장치로 주기억장치와 보조기억장치로 나뉜다.
4) 제어 장치는 데이터를 연산하고 처리하는 장치이다.

정답: 4

해설: 제어 장치는 데이터를 연산하고 처리하는 장치가 아니라, 명령어와 데이터를 읽고 제어하는 장치입니다. 데이터를 연산하고 처리하는 장치는 연산 장치입니다.


14. 다음 중 소프트웨어의 종류에 대한 설명으로 옳지 않은 것은?

1) 응용 소프트웨어는 사용자의 특정 업무나 목적에 맞게 문제 해결을 위한 명령어 집합이다.
2) 시스템 소프트웨어는 하드웨어를 제어·관리하여 응용 소프트웨어가 실행될 수 있는 환경을 제공한다.
3) 소프트웨어는 컴퓨터의 물리적 부품으로 구성되어 있다.
4) 소스 코드를 기계어로 번역하는 소프트웨어는 컴파일러이다.

정답: 3

해설: 소프트웨어는 물리적 부품이 아니라, 컴퓨터 하드웨어가 언제 어떻게 동작하여 문제를 해결할 수 있는지 지시하는 명령어 집합입니다.


15. 다음 중 기억(저장) 장치에 대한 설명으로 옳지 않은 것은?

1) 주기억장치는 속도가 빠르고 용량이 작으며, 전원 차단 시 모든 내용이 초기화된다.
2) 보조기억장치는 속도가 느리고 용량이 크며, 전원 차단 시에도 내용이 보존된다.
3) 플래시 드라이브는 주기억장치에 해당한다.
4) RAM은 전원이 차단되면 기억 내용이 모두 초기화된다.

정답: 3

해설: 플래시 드라이브는 보조기억장치에 해당하며, 주기억장치에 해당하지 않습니다.


16. 다음 중 운영체제의 역할에 대한 설명으로 옳지 않은 것은?

1) 운영체제는 컴퓨터의 자원을 효율적으로 관리한다.
2) 운영체제는 응용 프로그램에 자원을 할당한다.
3) 운영체제는 사용자가 컴퓨터를 직접 제어하는 것을 방지한다.
4) 운영체제는 사용자와 컴퓨터 간의 인터페이스를 제공한다.

정답: 3

해설: 운영체제는 사용자가 컴퓨터를 효율적으로 운영하고 관리할 수 있도록 도와주는 역할을 하며, 사용자가 컴퓨터를 직접 제어하는 것을 방지하지 않습니다.

 

 

 

17. 다음 중 입력 장치에 대한 설명으로 옳지 않은 것은?

1) 키보드는 명령과 데이터를 컴퓨터에 전달하는 장치이다.
2) 마우스는 컴퓨터가 처리할 수 있는 2진수 형태로 명령과 데이터를 변환한다.
3) 스캐너는 텍스트나 이미지를 디지털 형식으로 변환하는 장치이다.
4) 터치스크린은 사용자 입력을 감지하여 컴퓨터에 전달하는 장치이다.

정답: 2

해설: 마우스는 사용자의 움직임과 클릭을 감지하여 컴퓨터에 전달하는 장치이지, 명령과 데이터를 2진수 형태로 변환하지 않습니다.


18. 다음 중 출력 장치에 대한 설명으로 옳지 않은 것은?

1) 프린터는 데이터를 문서 형태로 출력하는 장치이다.
2) 모니터는 데이터를 시각적으로 표시하는 장치이다.
3) 스피커는 데이터를 소리로 변환하여 출력하는 장치이다.
4) 키보드는 데이터를 입력하는 장치이다.

정답: 4

해설: 키보드는 데이터를 입력하는 장치로, 출력 장치에 해당하지 않습니다.


19. 다음 중 주기억장치와 보조기억장치의 특징으로 옳지 않은 것은?

1) 주기억장치는 속도가 빠르지만 용량이 작다.
2) 보조기억장치는 속도가 느리지만 용량이 크다.
3) 주기억장치는 전원 차단 시에도 기억 내용을 보존한다.
4) 보조기억장치는 전원 차단 시에도 기억 내용을 보존한다.

정답: 3

해설: 주기억장치 중 RAM은 전원 차단 시 모든 내용이 초기화되며, ROM만 기억 내용을 보존합니다.


20. 다음 중 소프트웨어에 대한 설명으로 옳지 않은 것은?

1) 응용 소프트웨어는 특정 업무나 목적에 맞게 문제 해결을 위한 명령어 집합이다.
2) 시스템 소프트웨어는 하드웨어를 제어하고 관리하여 응용 소프트웨어가 실행될 수 있는 환경을 제공한다.
3) 운영체제는 시스템 소프트웨어의 일종으로, 사용자와 컴퓨터 간의 인터페이스를 제공한다.
4) 소프트웨어는 하드웨어의 물리적 부품으로 구성된다.

정답: 4

해설: 소프트웨어는 하드웨어의 물리적 부품이 아니라, 하드웨어가 언제 어떻게 동작하여 문제를 해결할 수 있는지 지시하는 명령어 집합입니다.

 

21. 다음 중 파이썬의 탄생과 관련된 설명으로 옳지 않은 것은?

1) 파이썬은 1991년 히도 판 로섬이 개발하였다.
2) 파이썬이라는 이름은 히도 판 로섬의 애완용 뱀의 이름에서 유래하였다.
3) 파이썬은 분산 운영 체제인 아메바의 시스템 관리를 위한 쉘 스크립팅 언어로 개발되었다.
4) 파이썬은 크리스마스 주 연구실이 잠겨 할일이 없어서 만든 프로그래밍 언어이다.

정답: 2

해설: 파이썬이라는 이름은 히도 판 로섬이 좋아하는 코미디 프로그램 'Monty Python’s Flying Circus'에서 유래하였습니다.

22. 다음 중 파이썬의 특징에 대한 설명으로 옳지 않은 것은?

1) 파이썬은 명령형, 절차적, 객체지향, 함수형 프로그래밍을 모두 지원한다.
2) 파이썬은 응용 프로그램 개발에만 사용되며 교육적인 목적에는 적합하지 않다.
3) 파이썬은 다목적으로 활용 가능하며 웹, 백 엔드, 사물 인터넷 분야에서도 사용된다.
4) 파이썬은 직관적이며 간결한 문법을 제공하여 초보자에게도 적합하다.

정답: 2

해설: 파이썬은 응용 프로그램 개발뿐만 아니라 교육적인 목적으로도 많이 활용됩니다.

23. 다음 중 파이썬의 실행 환경에 대한 설명으로 옳지 않은 것은?

1) 파이썬은 플랫폼에 독립적이며 다양한 운영체제에서 실행될 수 있다.
2) 파이썬은 정적 타이핑 방식을 사용하여 변수의 자료형을 미리 지정해야 한다.
3) 파이썬 인터프리터는 CPython, PyPy, Cython, Jython 등이 있다.
4) 파이썬은 작성한 코드에 대한 수행 결과를 바로 확인할 수 있는 대화형 언어이다.

정답: 2

해설: 파이썬은 동적 타이핑 방식을 사용하여 변수의 자료형을 미리 지정할 필요가 없습니다.

24. 다음 중 파이썬의 단점에 대한 설명으로 옳은 것은?

1) 파이썬은 C나 자바보다 빠른 속도를 자랑한다.
2) 파이썬은 모바일 앱 개발에 주로 사용된다.
3) 파이썬은 완전한 애플리케이션을 단독으로 개발하는 데 적합하다.
4) 파이썬은 속도가 느리며 모바일 앱과 같은 응용 애플리케이션 개발에는 적합하지 않다.

정답: 4

해설: 파이썬은 C나 자바 등으로 작성된 프로그램보다 속도가 느리고, 모바일 앱과 같은 응용 애플리케이션 개발에는 적합하지 않습니다.

 

 


25. 다음 중 파이썬의 인터프리터에 대한 설명으로 옳지 않은 것은?

1) CPython은 C 언어로 개발된 파이썬 인터프리터이다.
2) PyPy는 파이썬 코드의 성능을 높이기 위해 JIT 컴파일을 사용하는 인터프리터이다.
3) Jython은 파이썬 코드를 자바 바이트코드로 변환하여 JVM에서 실행되는 인터프리터이다.
4) Cython은 파이썬 코드와 달리 자바스크립트 환경에서 실행되는 인터프리터이다.

정답: 4

해설: Cython은 파이썬 코드를 C로 변환하여 컴파일할 수 있게 해주는 도구로, 자바스크립트 환경에서 실행되는 것이 아닙니다.

26. 다음 중 파이썬 프로그램의 실행 과정에 대한 설명으로 옳지 않은 것은?

1) 파이썬 애플리케이션은 소스 코드 형태로 배포된다.
2) CPython은 소스 코드를 바이트코드(.pyc 파일)로 컴파일한다.
3) 파이썬 가상 머신(PVM)은 바이트코드를 실행한다.
4) 파이썬은 작성된 코드가 바로 기계어 코드로 변환되어 실행된다.

정답: 4

해설: 파이썬은 바이트코드로 변환된 후, 파이썬 가상 머신(PVM)이 바이트코드를 해석하여 실행합니다.

27. 다음 중 파이썬의 통합 개발 환경(IDLE)에 대한 설명으로 옳지 않은 것은?

1) IDLE은 파이썬에 기본으로 포함된 통합 개발 환경이다.
2) IDLE은 구문 강조, 자동 완성, 스마트 들여쓰기를 지원한다.
3) IDLE은 주피터 노트북과 같은 웹 기반 개발 환경이다.
4) IDLE은 통합 디버거 환경을 제공하여 디버깅이 가능하다.

정답: 3

해설: IDLE은 데스크톱 기반의 통합 개발 환경이며, 주피터 노트북은 웹 기반 개발 환경입니다.

28. 다음 중 파이썬의 주피터 노트북에 대한 설명으로 옳은 것은?

1) 주피터 노트북은 파이썬만 지원하는 웹 기반 개발 환경이다.
2) 주피터 노트북은 코드 실행 결과를 문서화하여 다른 사람과 공유하기 어렵다.
3) 주피터 노트북은 전통적인 소스코드-컴파일-실행 방식에 의존한다.
4) 주피터 노트북은 마크다운을 이용하여 코드 관련 설명을 작성할 수 있다.

정답: 4

해설: 주피터 노트북은 파이썬을 비롯한 여러 프로그래밍 언어를 지원하며, 코드 실행 결과를 문서화하여 공유하기 쉽고, 마크다운을 이용하여 설명을 작성할 수 있습니다.

 

 

 



29. 다음 중 파이썬의 탄생 배경에 대한 설명으로 옳은 것은?

1) 파이썬은 2000년에 처음 개발되었다.
2) 파이썬은 크리스마스 주 연구실이 잠겨 할 일이 없어 개발되었다.
3) 파이썬의 이름은 'Python'이라는 뱀에서 유래하였다.
4) 파이썬은 분산 운영 체제 아메바의 시스템 관리를 위한 프로그래밍 언어로 개발되었다.

정답: 2

해설: 파이썬은 히도 판 로섬이 크리스마스 주에 연구실이 잠겨 할 일이 없어 개발한 프로그래밍 언어입니다. 이름은 좋아하는 코미디 쇼 'Monty Python's Flying Circus'에서 유래하였으며, 분산 운영 체제 아메바의 시스템 관리를 위한 쉘 스크립팅 언어로 개발되었습니다.

30. 다음 중 파이썬의 발전 과정에 대한 설명으로 옳지 않은 것은?

1) 파이썬은 1991년 ABC의 후속 프로그래밍 언어로 시작되었다.
2) 1999년 DARPA에 'Computer Programming for Everybody' 제안이 제출되었다.
3) 2008년 파이썬 3.0이 출시되었으며, 하위 호환성을 유지하였다.
4) 2000년 파이썬 2.0이 출시되어 커뮤니티를 통한 개발 체계가 시작되었다.

정답: 3

해설: 파이썬 3.0은 2008년에 출시되었으며, 하위 호환성을 유지하지 않았습니다. 이는 주요 업데이트로 많은 변화가 있었기 때문에 이전 버전과의 호환이 어려웠습니다.

31. 다음 중 파이썬의 특징에 대한 설명으로 옳은 것은?

1) 파이썬은 실행할 수 있는 의사 코드 수준의 문법을 지향한다.
2) 파이썬은 완전한 애플리케이션 단독 개발이 가능하다.
3) 파이썬은 모바일 애플리케이션 개발에 최적화되어 있다.
4) 파이썬은 C 언어와 동일한 속도로 실행된다.

정답: 1

해설: 파이썬은 실행할 수 있는 의사 코드 수준의 문법을 지향하여 매우 직관적이고 인간 친화적인 프로그래밍 언어입니다. 그러나 속도 면에서는 C 언어나 자바보다 느리며, 모바일 애플리케이션 개발에는 적합하지 않습니다.

32. 다음 중 파이썬의 다중 프로그래밍 패러다임에 대한 설명으로 옳은 것은?

1) 파이썬은 명령형 프로그래밍만 지원한다.
2) 파이썬은 절차적 프로그래밍과 객체지향 프로그래밍을 지원하지 않는다.
3) 파이썬은 함수형 프로그래밍을 지원한다.
4) 파이썬은 다목적 활용이 불가능하다.

정답: 3

해설: 파이썬은 명령형 프로그래밍, 절차적 프로그래밍, 객체지향 프로그래밍, 함수형 프로그래밍 등 다양한 프로그래밍 패러다임을 지원합니다. 이로 인해 응용 프로그램, 웹 개발, 사물 인터넷, 교육적 목적 등 다양한 분야에서 활용될 수 있습니다.

 

 

 

33. 다음 중 파이썬의 자료형에 대한 설명으로 옳지 않은 것은?

1) 정수는 소수점이 없는 숫자를 나타낸다.
2) 실수는 소수점이 포함된 숫자를 나타낸다.
3) 문자는 유니코드 기반으로 표현된다.
4) 문자열은 숫자와 혼합하여 사용할 수 없다.

정답: 4

해설: 문자열은 인용부호(" 또는 ')를 사용하여 표현되며, 숫자와 혼합하여 사용할 수 있습니다. 예를 들어, "Hello" + "123"은 "Hello123"으로 결합됩니다.

34. 다음 중 파이썬의 기본 연산자와 표현식에 대한 설명으로 옳은 것은?

1) ** 연산자는 나눗셈을 수행한다.
2) + 연산자는 빼기를 수행한다.
3) * 연산자는 곱하기를 수행한다.
4) - 연산자는 더하기를 수행한다.

정답: 3

해설: * 연산자는 곱하기를 수행합니다. 예를 들어, 2 * 3은 6을 반환합니다. ** 연산자는 지수(거듭제곱) 연산을 수행합니다.

35. 다음 중 파이썬의 함수 사용에 대한 설명으로 옳지 않은 것은?

1) print 함수는 화면에 데이터를 출력한다.
2) 함수는 특정 작업을 수행하는 코드의 집합이다.
3) 함수의 이름만으로는 실행할 수 없다.
4) 함수는 입력값(파라미터)을 가질 수 있다.

정답: 3

해설: 함수는 함수의 이름만으로 실행할 수 있습니다. 예를 들어, print("Hello World!")는 "Hello World!"를 화면에 출력합니다.

36. 다음 중 파이썬의 들여쓰기에 대한 설명으로 옳은 것은?

1) 파이썬에서는 들여쓰기가 중요하지 않다.
2) 파이썬에서는 들여쓰기가 코드 블록을 나타낸다.
3) 들여쓰기는 8칸의 스페이스를 사용해야 한다.
4) 파이썬에서 들여쓰기는 가독성을 낮춘다.

정답: 2

해설: 파이썬에서는 들여쓰기가 코드 블록을 나타내며, 논리적인 집합을 표현합니다. PEP 8에서는 4칸의 스페이스 들여쓰기를 권장합니다.

 

 

37. 다음 중 파이썬의 변수 사용에 대한 설명으로 옳은 것은?

1) 변수의 이름은 숫자로 시작할 수 있다.
2) 변수의 값은 프로그램 실행 중에 변경될 수 없다.
3) 변수의 이름은 문자, 숫자, 밑줄로 구성될 수 있다.
4) 파이썬에서는 변수의 값 할당에 '=' 대신 '=='를 사용한다.

정답: 3

해설: 파이썬에서 변수의 이름은 문자, 숫자, 밑줄로 구성될 수 있습니다. 다만, 변수 이름은 문자 또는 밑줄로 시작해야 하며, '='은 값 할당에 사용되고 '=='은 비교 연산에 사용됩니다.

38. 다음 중 파이썬의 예약어에 대한 설명으로 옳은 것은?

1) 예약어는 변수 이름으로 사용할 수 있다.
2) 예약어는 파이썬 인터프리터에 의해 특별한 의미를 가진다.
3) 예약어는 대소문자를 구분하지 않는다.
4) 예약어는 프로그램 실행 중에 값이 변경될 수 있다.

정답: 2

해설: 예약어는 파이썬 인터프리터에 의해 특별한 의미를 가지며, 변수 이름으로 사용할 수 없습니다. 예약어는 대소문자를 구분하며, 프로그램 실행 중에 값이 변경될 수 없습니다.

39. 다음 중 파이썬의 모듈로 연산자(%)에 대한 설명으로 옳은 것은?

1) 두 숫자를 나눈 몫을 반환한다.
2) 두 숫자를 나눈 나머지를 반환한다.
3) 두 숫자를 더한 값을 반환한다.
4) 두 숫자를 뺀 값을 반환한다.

정답: 2

해설: 모듈로 연산자(%)는 두 숫자를 나눈 나머지를 반환합니다. 예를 들어, 5 % 2는 1을 반환합니다.

40. 다음 중 파이썬의 연산자 우선순위에 대한 설명으로 옳지 않은 것은?

1) 괄호 내의 수식이 가장 먼저 계산된다.
2) 지수 연산자가 덧셈 연산자보다 우선순위가 높다.
3) 곱셈 연산자는 덧셈 연산자보다 우선순위가 낮다.
4) 덧셈 연산자는 뺄셈 연산자와 동일한 우선순위를 가진다.

정답: 3

해설: 파이썬에서 곱셈 연산자는 덧셈 연산자보다 우선순위가 높습니다. 연산자 우선순위는 괄호 > 지수 > 곱셈/나눗셈 > 덧셈/뺄셈 순으로 적용됩니다.

 

 

 

41. 다음 중 파이썬의 들여쓰기에 대한 설명으로 옳은 것은?

1) 파이썬에서 들여쓰기는 선택 사항이다.
2) 파이썬은 들여쓰기로 코드의 블록을 표현한다.
3) 들여쓰기는 탭 또는 스페이스 2칸을 권장한다.
4) 파이썬의 들여쓰기는 코드의 가독성을 떨어뜨린다.

정답: 2

해설: 파이썬은 들여쓰기에 의존적인 언어로, 들여쓰기를 통해 코드의 블록을 표현합니다. PEP 8에서는 스페이스 4칸의 들여쓰기를 권장합니다.

42. 다음 중 파이썬의 주석 사용에 대한 설명으로 옳지 않은 것은?

1) 한 줄 주석은 #을 사용한다.
2) 여러 줄 주석은 """ 또는 '''를 사용한다.
3) 주석은 코드의 가독성을 높이고 유지보수를 용이하게 한다.
4) 주석은 프로그램 실행에 영향을 미친다.

정답: 4

해설: 주석은 프로그램 코드에 대한 설명을 추가하는 것이며, 프로그램 실행에 영향을 미치지 않습니다. 

43. 다음 중 파이썬의 식별자 규칙에 대한 설명으로 옳은 것은?

1) 식별자는 숫자로 시작할 수 있다.
2) 식별자는 예약어와 동일하게 사용할 수 있다.
3) 식별자는 길이에 제한이 없다.
4) 식별자는 공백을 포함할 수 있다.

정답: 3

해설: 파이썬의 식별자는 문자, 숫자, 밑줄로 구성될 수 있으며 문자 또는 밑줄로 시작해야 합니다. 예약어와 동일하게 사용할 수 없으며 길이 제한이 없습니다.

44. 다음 중 파이썬의 함수에 대한 설명으로 옳은 것은?

1) 함수는 반드시 값을 반환해야 한다.
2) 함수는 코드의 재사용성을 높이는 단위이다.
3) 함수 이름은 대문자로 시작해야 한다.
4) 함수는 다른 함수 내에서 정의될 수 없다.

정답: 2

해설: 함수는 특정 작업을 수행하는 코드의 집합으로, 코드의 재사용성을 높이는 단위입니다. 함수는 값을 반환할 수도 있고, 반환하지 않을 수도 있으며, 다른 함수 내에서 정의될 수 있습니다.

 

 

 

 

 



45. 다음 중 파이썬에서 데이터 타입 변환에 대한 설명으로 옳지 않은 것은?

1) 문자열을 정수로 변환하려면 int() 함수를 사용한다.
2) 정수를 소수로 변환하려면 float() 함수를 사용한다.
3) 소수를 문자열로 변환하려면 str() 함수를 사용한다.
4) 문자열을 소수로 변환하려면 float() 함수를 사용할 수 없다.

정답: 4

해설: 문자열을 소수로 변환할 때는 float() 함수를 사용할 수 있습니다. 예를 들어, float("3.14")는 3.14를 반환합니다.



46. 다음 중 파이썬의 print 함수에 대한 설명으로 옳은 것은?

1) print 함수는 한 번에 하나의 데이터만 출력할 수 있다.
2) print 함수의 sep 옵션을 사용하여 출력되는 데이터 사이의 구분자를 변경할 수 있다.
3) print 함수는 항상 출력 데이터 사이에 쉼표(,)를 자동으로 추가한다.
4) print 함수는 문자열 데이터만 출력할 수 있다.

정답: 2

해설: print 함수는 여러 개의 데이터를 출력할 수 있으며, sep 옵션을 사용하여 출력 데이터 사이의 구분자를 변경할 수 있습니다.



47. 다음 중 파이썬의 반복 구조에 대한 설명으로 옳은 것은?

1) 반복 구조는 주어진 조건이 참일 때 한 번만 실행된다.
2) 반복 구조는 특정 영역의 명령문을 여러 번 실행하는 구조이다.
3) 반복 구조는 주어진 조건이 거짓일 때 계속 반복된다.
4) 파이썬에서는 반복 구조를 사용할 수 없다.

정답: 2

해설: 반복 구조는 특정 영역의 명령문을 여러 번 실행하는 구조로, 주어진 조건이 참일 때 계속 반복됩니다.



48. 다음 중 파이썬의 선택 구조에 대한 설명으로 옳지 않은 것은?

1) 선택 구조는 특정 조건에 따라 명령문의 실행 여부를 결정한다.
2) 선택 구조는 if, elif, else 문을 사용하여 구현할 수 있다.
3) 선택 구조는 항상 참인 조건에서만 실행된다.
4) 선택 구조는 조건에 따라 서로 다른 명령문을 실행할 수 있다.

정답: 3

해설: 선택 구조는 주어진 조건이 참일 때 해당 명령문을 실행하며, 거짓일 때는 다른 명령문을 실행할 수 있습니다. if, elif, else 문을 사용하여 구현할 수 있습니다.

 

 

49. 다음 중 파이썬의 순차 구조에 대한 설명으로 옳은 것은?

1) 순차 구조는 특정 조건이 참일 때만 실행된다.
2) 순차 구조는 명령문을 무작위로 실행한다.
3) 순차 구조는 명령라인의 위치적 흐름에 따라 명령문을 순서대로 실행한다.
4) 순차 구조는 반복문을 포함할 수 없다.

정답: 3

해설: 순차 구조는 명령문의 위치적 흐름에 따라 위에서 아래로 순서대로 실행되는 가장 직관적인 구조입니다.


50. 다음 중 사용자 입력 함수 input()에 대한 설명으로 옳은 것은?

1) input() 함수는 정수형 데이터를 반환한다.
2) input() 함수는 사용자가 입력한 데이터를 문자열 데이터 타입으로 반환한다.
3) input() 함수는 사용자의 입력을 기다리지 않는다.
4) input() 함수는 오직 숫자만 입력받을 수 있다.

정답: 2

해설: input() 함수는 사용자가 입력한 데이터를 문자열 데이터 타입으로 반환하며, 함수의 파라미터는 입력 안내문을 표시하는 데 사용됩니다.


51. 다음 중 파이썬의 데이터 타입 변환에 대한 설명으로 옳지 않은 것은?

1) int() 함수는 문자열을 정수로 변환한다.
2) float() 함수는 문자열을 소수로 변환한다.
3) str() 함수는 숫자를 문자열로 변환한다.
4) input() 함수는 입력된 데이터를 자동으로 정수로 변환한다.

정답: 4

해설: input() 함수는 입력된 데이터를 자동으로 문자열로 반환하며, 정수나 소수로 변환하려면 int()나 float() 함수를 사용해야 합니다.


52. 다음 중 파이썬의 구문 오류(syntax error)에 대한 설명으로 옳은 것은?

1) 구문 오류는 프로그램 실행 중에 발생한다.
2) 구문 오류는 문법 체계에 적합하지 않은 명령문이 입력될 때 발생한다.
3) 구문 오류는 논리적으로 실행 불가능한 명령문에서 발생한다.
4) 구문 오류는 의미적으로 잘못 해석되는 명령문에서 발생한다.

정답: 2

해설: 구문 오류는 문법 체계에 적합하지 않은 명령문이 입력될 때 발생하며, 프로그램이 실행되기 전에 발견됩니다.

 

 

 

53. 다음 중 파이썬의 선택 구조(selection structure)에 대한 설명으로 옳은 것은?

1) 선택 구조는 명령문을 순서대로 실행하는 구조이다.
2) 선택 구조는 반복문을 사용하여 명령문을 여러 번 실행하는 구조이다.
3) 선택 구조는 특정 조건에 따라 명령문의 실행 여부를 결정하는 구조이다.
4) 선택 구조는 프로그램 시작 시 모든 명령문을 한 번에 실행하는 구조이다.

정답: 3

해설: 선택 구조는 특정 조건에 따라 명령문의 실행 여부를 결정하는 구조로, if, elif, else와 같은 조건문을 사용하여 구현됩니다.


54. 다음 중 파이썬의 반복 구조(iteration structure)에 대한 설명으로 옳지 않은 것은?

1) 반복 구조는 특정 조건이 충족될 때까지 명령문을 반복 실행한다.
2) 반복 구조는 for나 while 문을 사용하여 구현할 수 있다.
3) 반복 구조는 명령문을 무작위로 반복 실행한다.
4) 반복 구조는 프로그램의 효율성을 높이기 위해 사용된다.

정답: 3

해설: 반복 구조는 특정 조건이 충족될 때까지 명령문을 반복 실행하며, 주로 for 문이나 while 문을 사용하여 구현합니다. 명령문을 무작위로 반복 실행하지 않습니다.


55. 다음 중 파이썬의 print() 함수에 대한 설명으로 옳지 않은 것은?

1) print() 함수는 여러 개의 데이터를 콤마로 구분하여 출력할 수 있다.
2) print() 함수는 출력할 데이터 사이에 기본적으로 공백을 추가한다.
3) print() 함수의 sep 옵션을 사용하여 데이터 사이의 구분 문자를 변경할 수 있다.
4) print() 함수는 숫자 데이터만 출력할 수 있다.

정답: 4

해설: print() 함수는 문자열, 숫자, 변수 등 다양한 데이터 타입을 출력할 수 있으며, 여러 개의 데이터를 콤마로 구분하여 출력할 때 기본적으로 공백이 추가됩니다. sep 옵션을 사용하여 데이터 사이의 구분 문자를 변경할 수 있습니다.


56. 다음 중 원뿔 계산 프로그램의 부피(volume) 계산식으로 올바른 것은?

1) volume = 1/3 * π * r * h
2) volume = π * r² * h
3) volume = 1/3 * π * r² * h
4) volume = π * r²

정답: 3

해설: 원뿔의 부피는 'volume = 1/3 * π * r² * h' 식을 사용하여 계산합니다. 여기서 r은 반지름, h는 높이입니다.

 

 

 

 

 

57. 다음 중 파이썬의 불리언(Boolean) 타입에 대한 설명으로 옳지 않은 것은?

1) 불리언 타입은 True와 False 두 가지 값만 가질 수 있다.
2) 불리언 타입은 논리 연산자와 함께 사용된다.
3) 불리언 타입은 문자열 데이터 타입의 일종이다.
4) 비교 연산자의 결과는 불리언 타입이다.

정답: 3

해설: 불리언 타입은 참(True)과 거짓(False)의 값을 가지며, 비교 연산자와 논리 연산자와 함께 사용됩니다. 불리언 타입은 문자열 데이터 타입과는 다릅니다.

58. 다음 중 파이썬의 논리 연산자에 대한 설명으로 옳은 것은?

1) and 연산자는 두 논리값이 모두 True일 때 True를 반환한다.
2) or 연산자는 두 논리값이 모두 False일 때 True를 반환한다.
3) not 연산자는 두 논리값이 모두 True일 때 False를 반환한다.
4) and 연산자는 두 논리값 중 하나만 True여도 True를 반환한다.

정답: 1

해설: and 연산자는 두 논리값이 모두 True일 때 True를 반환하며, or 연산자는 하나의 논리값만 True여도 True를 반환합니다. not 연산자는 논리값을 반전시킵니다.

59. 다음 중 파이썬의 단락 평가(short-circuit evaluation)에 대한 설명으로 옳지 않은 것은?

1) 단락 평가는 첫 번째 논리값만으로 전체 연산 결과가 결정될 때 두 번째 논리값을 평가하지 않는다.
2) 단락 평가는 코드 실행의 효율성을 높일 수 있다.
3) and 연산자의 경우 첫 번째 논리값이 False면 두 번째 논리값을 평가하지 않는다.
4) or 연산자의 경우 첫 번째 논리값이 True면 두 번째 논리값을 평가한다.

정답: 4

해설: or 연산자의 경우 첫 번째 논리값이 True면 두 번째 논리값을 평가하지 않습니다. 단락 평가는 첫 번째 논리값만으로 전체 결과가 결정될 때 불필요한 평가를 생략하여 효율성을 높입니다.

60. 다음 중 파이썬의 중첩 선택 구조(nested selection structure)에 대한 설명으로 옳은 것은?

1) 중첩 선택 구조는 하나의 if 문만을 포함한다.
2) 중첩 선택 구조는 여러 개의 선택 구조를 중첩하여 사용한다.
3) 중첩 선택 구조는 한 번의 조건만 평가할 수 있다.
4) 중첩 선택 구조는 반복문을 사용하여 구현된다.

정답: 2

해설: 중첩 선택 구조는 여러 개의 선택 구조를 중첩하여 사용하며, 하나의 선택 구조 안에 다른 선택 구조를 포함하여 여러 조건을 평가할 수 있습니다. 반복문과는 별개의 개념입니다.

 

 

61. 다음 중 파이썬의 선택 구조에 대한 설명으로 옳지 않은 것은?

1) 선택 구조는 특정 조건에 따라 명령문을 실행할지 여부를 결정하는 구조이다.
2) 파이썬에서 선택 구조를 구현할 때 들여쓰기를 사용하여 코드 블록을 표현한다.
3) 선택 구조는 한 번의 조건만 평가할 수 있으며, 여러 조건을 동시에 평가할 수 없다.
4) 파이썬의 선택 구조는 if, elif, else 키워드를 사용하여 구현할 수 있다.

정답: 3

해설: 선택 구조는 특정 조건에 따라 명령문을 실행할지 여부를 결정하는 구조로, 파이썬에서는 들여쓰기를 통해 코드 블록을 표현합니다. 또한, 여러 조건을 평가할 수 있으며, if, elif, else 키워드를 사용하여 다양한 조건을 처리할 수 있습니다.

62. 다음 중 파이썬의 불리언식에 대한 설명으로 옳은 것은?

1) 불리언식은 항상 True 값을 반환한다.
2) 불리언식은 비교 연산자를 사용하여 결과가 불리언 타입으로 생성되는 표현식이다.
3) 불리언식은 단항 연산자만을 사용하여 생성된다.
4) 불리언식은 문자열을 비교할 때만 사용된다.

정답: 2

해설: 불리언식은 비교 연산자를 사용하여 결과가 불리언 타입(True 또는 False)으로 생성되는 표현식입니다. 불리언식은 다양한 연산자를 사용하여 생성될 수 있으며, 문자열뿐만 아니라 숫자 등 다양한 데이터 타입을 비교할 수 있습니다.

63. 다음 중 파이썬의 이분 선택 구조(if-else)에 대한 설명으로 옳은 것은?

1) 이분 선택 구조는 두 개의 if 문을 사용하여 구현된다.
2) 이분 선택 구조는 조건이 참일 때와 거짓일 때 각각 다른 명령문을 실행한다.
3) 이분 선택 구조는 조건이 거짓일 경우만 명령문을 실행한다.
4) 이분 선택 구조는 elif 키워드를 사용하여 여러 조건을 평가한다.

정답: 2

해설: 이분 선택 구조는 if와 else 문을 사용하여 조건이 참일 때와 거짓일 때 각각 다른 명령문을 실행합니다. 조건이 참일 때는 if 블록의 명령문이 실행되고, 조건이 거짓일 때는 else 블록의 명령문이 실행됩니다.

64. 다음 중 파이썬의 다분 선택 구조(if-elif-else)에 대한 설명으로 옳은 것은?

1) 다분 선택 구조는 오직 하나의 조건만 평가할 수 있다.
2) 다분 선택 구조는 여러 조건을 순차적으로 평가하며, 조건이 참인 첫 번째 블록의 명령문을 실행한다.
3) 다분 선택 구조는 모든 조건이 거짓일 경우에도 마지막 else 블록을 실행하지 않는다.
4) 다분 선택 구조는 항상 세 개의 조건을 포함해야 한다.

정답: 2

해설: 다분 선택 구조는 여러 조건을 순차적으로 평가하며, 조건이 참인 첫 번째 블록의 명령문을 실행합니다. elif 키워드를 사용하여 여러 조건을 평가할 수 있으며, 모든 조건이 거짓일 경우 마지막 else 블록을 실행합니다. 포함되는 조건의 개수에는 제한이 없습니다.

 

 

 

65. 다음 중 파이썬의 논리 연산자에 대한 설명으로 옳은 것은?

1) 논리 연산자는 단항 연산자만 포함한다.
2) 논리 연산자는 두 개의 불리언 값을 연산하여 참 또는 거짓을 결과로 얻는다.
3) 논리 연산자는 오직 and 연산자만을 포함한다.
4) 논리 연산자는 불리언 값을 반환하지 않는다.

정답: 2

해설: 논리 연산자는 두 개의 불리언 값을 연산하여 참(True) 또는 거짓(False)을 결과로 얻는 연산자입니다. 논리 연산자에는 and, or, not이 있으며, 이는 각각 논리곱, 논리합, 논리부정을 수행합니다.

66. 다음 중 파이썬의 논리 연산자 and의 동작에 대한 설명으로 옳은 것은?

1) 두 논리값 중 하나라도 False이면 결과는 True이다.
2) 두 논리값 중 하나라도 True이면 결과는 False이다.
3) 두 논리값이 모두 True일 때 결과는 True이다.
4) 두 논리값이 모두 False일 때 결과는 True이다.

정답: 3

해설: 논리 연산자 and는 두 논리값이 모두 True일 때 결과가 True입니다. 하나라도 False이면 결과는 False가 됩니다.

67. 다음 중 파이썬의 논리 연산자 or의 동작에 대한 설명으로 옳은 것은?

1) 두 논리값이 모두 True일 때만 결과는 True이다.
2) 두 논리값이 모두 False일 때만 결과는 False이다.
3) 두 논리값 중 하나라도 False이면 결과는 True이다.
4) 두 논리값 중 하나라도 True이면 결과는 False이다.

정답: 2

해설: 논리 연산자 or는 두 논리값이 모두 False일 때만 결과가 False입니다. 하나라도 True이면 결과는 True가 됩니다.

68. 다음 중 파이썬의 단락 평가(short-circuit evaluation)에 대한 설명으로 옳은 것은?

1) 논리 연산의 첫 번째 논리값만으로 전체 연산 결과가 판별될 수 있는 경우 두 번째 논리값은 평가되지 않는다.
2) 논리 연산의 모든 논리값이 항상 평가된다.
3) 단락 평가는 오직 and 연산자에서만 사용된다.
4) 단락 평가는 오직 or 연산자에서만 사용된다.

정답: 1

해설: 단락 평가는 첫 번째 논리값만으로 전체 연산 결과가 판별될 수 있는 경우 두 번째 논리값을 평가하지 않는 기법입니다. 이는 and 연산자와 or 연산자 모두에서 사용됩니다.

 

 

 

69. 다음 중 파이썬의 `for` 문에 대한 설명으로 옳은 것은?

1) `for` 문은 무한 루프를 만들 때 주로 사용된다.
2) `for` 문은 조건에 따라 반복을 멈출 수 있다.
3) `for` 문은 리스트나 튜플 등의 시퀀스를 순회할 때 사용된다.
4) `for` 문은 항상 역순으로 순회한다.

정답: 3

해설: `for` 문은 주로 리스트, 튜플, 문자열 등의 시퀀스를 순회할 때 사용됩니다. 주어진 시퀀스의 각 요소를 하나씩 가져와서 코드 블록을 실행합니다.

70. 다음 중 파이썬의 `while` 문에 대한 설명으로 옳은 것은?

1) `while` 문은 시퀀스를 순회할 때 주로 사용된다.
2) `while` 문은 조건이 참일 때 계속 반복 실행된다.
3) `while` 문은 반복 횟수가 고정된 경우 사용된다.
4) `while` 문은 반복 실행 중 조건이 거짓이 되면 다시 처음으로 돌아간다.

정답: 2

해설: `while` 문은 조건이 참일 때 반복 실행됩니다. 조건이 거짓이 되면 반복을 종료합니다. 주로 조건제어 반복에서 사용됩니다.

71. 다음 중 파이썬의 `range` 함수에 대한 설명으로 옳은 것은?

1) `range` 함수는 항상 0부터 시작한다.
2) `range` 함수는 정수만 반환한다.
3) `range` 함수는 리스트를 반환한다.
4) `range` 함수는 시작 값, 끝 값, 증가 값을 지정할 수 있다.

정답: 4

해설: `range` 함수는 시작 값, 끝 값, 증가 값을 지정하여 시퀀스를 생성할 수 있습니다. 리스트가 아닌 range 객체를 반환합니다.

72. 다음 중 파이썬의 중첩 반복 구조에 대한 설명으로 옳은 것은?

1) 중첩 반복 구조는 항상 일정한 반복 횟수를 가진다.
2) 중첩 반복 구조는 반복문 안에 또 다른 반복문을 포함하는 구조이다.
3) 중첩 반복 구조는 오직 `for` 문에서만 사용된다.
4) 중첩 반복 구조는 외부 반복문이 종료된 후 내부 반복문이 실행된다.

정답: 2

해설: 중첩 반복 구조는 반복문 안에 또 다른 반복문을 포함하는 구조입니다. 외부 반복문이 실행될 때마다 내부 반복문이 실행됩니다.

 

 

 

73. 다음 중 파이썬의 리스트에 대한 설명으로 옳은 것은?

1) 리스트는 순서가 없는 데이터 타입이다.
2) 리스트는 고정된 크기를 가진다.
3) 리스트는 원소의 추가, 삭제, 수정이 가능하다.
4) 리스트는 중복된 값을 허용하지 않는다.

정답: 3

해설: 리스트는 순서화된 값의 집합체로, 원소의 추가, 삭제, 수정이 가능합니다. 리스트는 동적으로 크기가 변경될 수 있으며, 중복된 값을 허용합니다.

74. 다음 중 파이썬의 리스트 생성에 대한 설명으로 옳은 것은?

1) 리스트는 항상 빈 리스트로 초기화되어야 한다.
2) 리스트는 문자열만 원소로 가질 수 있다.
3) 리스트는 대괄호([])를 사용하여 생성된다.
4) 리스트는 생성 후 원소를 변경할 수 없다.

정답: 3

해설: 리스트는 대괄호([])를 사용하여 생성되며, 그 안에 원소를 콤마(,)로 구분하여 나열합니다. 리스트는 생성 후에도 원소를 변경할 수 있습니다.

75. 다음 중 파이썬의 리스트 인덱스 연산자에 대한 설명으로 옳은 것은?

1) 리스트의 첫 번째 원소는 인덱스 1을 가진다.
2) 리스트의 마지막 원소는 항상 인덱스 -1로 접근한다.
3) 리스트 인덱스 연산자는 수정이 불가능하다.
4) 리스트 인덱스 연산자는 오직 읽기 전용이다.

정답: 2

해설: 리스트의 첫 번째 원소는 인덱스 0을 가지며, 마지막 원소는 인덱스 -1로 접근할 수 있습니다. 리스트 인덱스 연산자를 통해 원소의 값을 수정할 수 있습니다.

76. 다음 중 파이썬의 `for` 문과 리스트를 이용한 반복에 대한 설명으로 옳은 것은?

1) `for` 문은 리스트의 모든 원소를 한 번에 처리한다.
2) `for` 문은 리스트의 원소를 순회할 때 임의의 순서로 접근한다.
3) `for` 문은 리스트의 원소를 하나씩 순서대로 가져와서 처리한다.
4) `for` 문은 리스트의 원소를 역순으로 순회할 수 없다.

정답: 3

해설: `for` 문은 리스트의 원소를 하나씩 순서대로 가져와서 처리합니다. 이를 통해 리스트의 모든 원소를 순회할 수 있습니다.

 

 

 

77. 다음 중 파이썬의 문자열에 대한 설명으로 옳은 것은?

1) 문자열은 변경 가능한 데이터 타입이다.
2) 문자열은 숫자만 포함할 수 있다.
3) 문자열은 큰따옴표(")나 작은따옴표(')로 감싸서 생성된다.
4) 문자열은 인덱스로 접근할 수 없다.

정답: 3

해설: 문자열은 큰따옴표(")나 작은따옴표(')로 감싸서 생성됩니다. 문자열은 불변(immutable) 데이터 타입이며, 숫자나 문자를 포함할 수 있습니다. 문자열의 각 문자에 인덱스를 사용하여 접근할 수 있습니다.

78. 다음 중 파이썬의 슬라이싱에 대한 설명으로 옳은 것은?

1) 슬라이싱은 리스트에서만 사용할 수 있다.
2) 슬라이싱은 시작 인덱스와 끝 인덱스를 포함하지 않는다.
3) 슬라이싱은 원본 데이터를 변경한다.
4) 슬라이싱은 새로운 객체를 반환한다.

정답: 4

해설: 슬라이싱은 문자열, 리스트, 튜플 등에서 사용할 수 있으며, 새로운 객체를 반환합니다. 슬라이싱은 시작 인덱스부터 끝 인덱스 바로 전까지의 요소를 포함합니다. 원본 데이터는 변경되지 않습니다.

79. 다음 중 파이썬의 튜플에 대한 설명으로 옳은 것은?

1) 튜플은 중복된 값을 허용하지 않는다.
2) 튜플은 원소의 추가, 삭제, 수정을 지원한다.
3) 튜플은 소괄호(())를 사용하여 생성된다.
4) 튜플은 순서가 없는 데이터 타입이다.

정답: 3

해설: 튜플은 소괄호(())를 사용하여 생성되며, 순서가 있는 데이터 타입입니다. 튜플은 중복된 값을 허용하지만, 불변(immutable) 데이터 타입이므로 원소의 추가, 삭제, 수정을 지원하지 않습니다.

80. 다음 중 파이썬의 사전(dictionary)에 대한 설명으로 옳은 것은?

1) 사전은 키와 값의 쌍으로 이루어진 데이터 타입이다.
2) 사전의 키는 변경될 수 있다.
3) 사전은 중복된 키를 허용한다.
4) 사전은 인덱스를 사용하여 접근할 수 있다.

정답: 1

해설: 사전은 키와 값의 쌍으로 이루어진 데이터 타입이며, 키는 변경될 수 없는 불변(immutable) 타입이어야 합니다. 사전은 중복된 키를 허용하지 않으며, 인덱스가 아닌 키를 사용하여 값에 접근합니다.

 

 

 

81. 다음 중 파이썬의 내장 함수에 대한 설명으로 옳은 것은?

1) 내장 함수는 사용자 정의 함수로 대체할 수 없다.
2) 내장 함수는 별도의 import 없이 사용할 수 있다.
3) 내장 함수는 오직 문자열 데이터 타입에만 사용할 수 있다.
4) 내장 함수는 파이썬 표준 라이브러리에 포함되지 않는다.

정답: 2

해설: 파이썬의 내장 함수는 별도의 import 없이 바로 사용할 수 있는 함수들입니다. 사용자 정의 함수로 대체할 수 있으며, 문자열 뿐만 아니라 다양한 데이터 타입에 사용할 수 있습니다. 내장 함수는 파이썬 표준 라이브러리에 포함됩니다.

82. 다음 중 파이썬의 예외 처리에 대한 설명으로 옳은 것은?

1) try 블록이 없으면 except 블록은 동작하지 않는다.
2) finally 블록은 예외가 발생할 경우에만 실행된다.
3) except 블록은 여러 번 사용할 수 없다.
4) raise 문은 예외를 무시하고 코드를 계속 실행한다.

정답: 1

해설: try 블록이 없으면 except 블록은 동작하지 않습니다. finally 블록은 예외 발생 여부와 상관없이 항상 실행되며, except 블록은 여러 번 사용할 수 있습니다. raise 문은 예외를 발생시켜 코드의 실행을 중단합니다.

83. 다음 중 파이썬의 리스트에 대한 설명으로 옳은 것은?

1) 리스트는 불변(immutable) 데이터 타입이다.
2) 리스트는 중복된 값을 허용하지 않는다.
3) 리스트는 대괄호([])를 사용하여 생성된다.
4) 리스트는 순서가 없는 데이터 타입이다.

정답: 3

해설: 리스트는 대괄호([])를 사용하여 생성되며, 순서가 있는 데이터 타입입니다. 리스트는 변경 가능한(mutable) 데이터 타입이며, 중복된 값을 허용합니다.

84. 다음 중 파이썬의 모듈에 대한 설명으로 옳은 것은?

1) 모듈은 한 번만 import 할 수 있다.
2) 모듈은 .py 확장자를 가진 파일이다.
3) 모듈은 클래스와 함수만 포함할 수 있다.
4) 모듈은 표준 라이브러리에 포함될 수 없다.

정답: 2

해설: 모듈은 .py 확장자를 가진 파일입니다. 모듈은 여러 번 import 할 수 있으며, 클래스, 함수, 변수 등 다양한 요소를 포함할 수 있습니다. 모듈은 표준 라이브러리에 포함될 수 있습니다.

 

 

85. 다음 중 파이썬 함수의 정의에 대한 설명으로 옳은 것은?

1) 함수의 매개변수는 1개만 사용할 수 있다.
2) 함수는 반드시 반환값을 가져야 한다.
3) 함수의 이름은 식별자로 사용할 수 있다.
4) 함수의 매개변수는 함수 내부에서 사용될 수 없다.

정답: 3

해설: 함수의 이름은 식별자로 사용할 수 있으며, 매개변수는 0개 이상 사용할 수 있습니다. 함수는 반환값이 없을 수도 있으며, 매개변수는 함수 내부에서 변수와 동일하게 사용될 수 있습니다.

86. 다음 중 파이썬의 원뿔 계산 함수 정의에 대한 설명으로 옳은 것은?

1) 함수 내부에서 선언된 변수는 전역 변수이다.
2) 원뿔의 부피와 겉넓이를 동시에 반환할 수 없다.
3) 함수 내부에서 조건문을 사용할 수 없다.
4) 함수는 여러 개의 값을 동시에 반환할 수 있다.

정답: 4

해설: 파이썬 함수는 여러 개의 값을 동시에 반환할 수 있습니다. 함수 내부에서 선언된 변수는 지역 변수이며, 함수 내부에서 조건문을 사용할 수 있습니다.

87. 다음 중 파이썬의 기본 매개변수에 대한 설명으로 옳은 것은?

1) 기본 매개변수는 항상 함수의 마지막에 위치해야 한다.
2) 기본 매개변수는 함수 호출 시 전달되지 않은 경우 기본값을 사용한다.
3) 기본 매개변수는 여러 개 사용할 수 없다.
4) 기본 매개변수는 함수 호출 시 반드시 전달되어야 한다.

정답: 2

해설: 기본 매개변수는 함수 호출 시 전달되지 않은 경우에만 기본값을 사용합니다. 기본 매개변수는 함수의 마지막에 위치해야 하며, 여러 개 사용할 수 있습니다.

88. 다음 중 파이썬의 가변 매개변수에 대한 설명으로 옳은 것은?

1) 가변 매개변수는 함수 정의 시 반드시 사용해야 한다.
2) 가변 매개변수는 함수 호출 시 여러 개의 값을 전달할 수 있다.
3) 가변 매개변수는 함수 정의 시 매개변수 리스트의 앞에 위치해야 한다.
4) 가변 매개변수는 함수 내부에서 사용될 수 없다.

정답: 2

해설: 가변 매개변수는 함수 호출 시 여러 개의 값을 전달할 수 있습니다. 가변 매개변수는 함수 정의 시 매개변수 리스트의 마지막에 위치해야 하며, 함수 내부에서 사용할 수 있습니다.

 

 

 

89. 다음 중 파이썬에서 반환값이 있는 함수에 대한 설명으로 옳은 것은?

1) 반환값이 있는 함수는 반드시 하나의 값만 반환할 수 있다.
2) 반환값이 있는 함수는 return 문을 사용하여 값을 반환한다.
3) 반환값이 있는 함수는 항상 숫자 타입의 값을 반환해야 한다.
4) 반환값이 있는 함수는 반환값을 생략할 수 있다.

정답: 2

해설: 반환값이 있는 함수는 return 문을 사용하여 값을 반환합니다. 반환값의 개수나 타입에는 제한이 없으며, 반환값을 생략하면 None이 반환됩니다.

90. 다음 중 파이썬의 동시 할당에 대한 설명으로 옳은 것은?

1) 동시 할당은 두 변수 간의 값을 교환할 때 사용할 수 없다.
2) 동시 할당은 한 번에 여러 값을 여러 변수에 할당하는 방식이다.
3) 동시 할당은 리스트나 튜플을 사용할 수 없다.
4) 동시 할당은 변수의 개수와 값의 개수가 일치하지 않아도 된다.

정답: 2

해설: 동시 할당은 한 번에 여러 값을 여러 변수에 할당하는 방식입니다. 변수의 개수와 값의 개수는 일치해야 하며, 리스트나 튜플을 사용할 수 있습니다.

91. 다음 중 파이썬에서 기본 매개변수에 대한 설명으로 옳은 것은?

1) 기본 매개변수는 항상 함수 정의 시 마지막에 위치해야 한다.
2) 기본 매개변수는 함수 호출 시 생략할 수 없다.
3) 기본 매개변수는 함수 정의 시 반드시 하나 이상 사용해야 한다.
4) 기본 매개변수는 함수 호출 시 전달되지 않은 경우 기본값을 사용한다.

정답: 4

해설: 기본 매개변수는 함수 호출 시 전달되지 않은 경우에만 기본값을 사용합니다. 기본 매개변수는 함수 정의 시 마지막에 위치해야 합니다.

92. 다음 중 파이썬의 가변 매개변수에 대한 설명으로 옳은 것은?

1) 가변 매개변수는 함수 정의 시 여러 개 사용할 수 있다.
2) 가변 매개변수는 함수 호출 시 전달된 모든 값을 튜플로 받는다.
3) 가변 매개변수는 항상 키워드 매개변수 다음에 와야 한다.
4) 가변 매개변수는 함수 내부에서 사용할 수 없다.

정답: 2

해설: 가변 매개변수는 함수 호출 시 전달된 모든 값을 튜플로 받습니다. 가변 매개변수는 함수 정의 시 하나만 사용할 수 있으며, 일반 매개변수 앞에 위치할 수 없습니다.

 

 

 



93. 다음 중 파이썬 함수의 반환값에 대한 설명으로 옳은 것은?

1) 함수는 항상 단 하나의 반환값만 가질 수 있다.
2) 함수는 반환값을 생략할 수 없다.
3) 함수는 반환값을 여러 개 가질 수 있다.
4) 반환값이 없는 함수는 존재하지 않는다.

정답: 3

해설: 파이썬 함수는 여러 개의 반환값을 가질 수 있습니다. 이는 튜플 형태로 여러 값을 반환할 수 있다는 것을 의미합니다. 반환값이 없는 함수는 존재할 수 있으며, 이는 `return` 문을 사용하지 않거나 `None`을 반환합니다.

94. 다음 중 파이썬에서 변수가 참조될 수 있는 영역에 대한 설명으로 옳은 것은?

1) 전역 변수는 함수 내부에서 참조될 수 없다.
2) 지역 변수는 함수 외부에서 참조될 수 있다.
3) 전역 변수는 프로그램 전체 영역에서 접근할 수 있다.
4) 지역 변수는 선언된 함수 내부와 외부 모두에서 접근할 수 있다.

정답: 3

해설: 전역 변수는 프로그램 전체 영역에서 접근할 수 있습니다. 반면, 지역 변수는 선언된 함수 내부에서만 접근할 수 있습니다.

95. 다음 중 파이썬 함수의 기본 매개변수에 대한 설명으로 옳은 것은?

1) 기본 매개변수는 항상 함수 정의 시 가장 앞에 위치해야 한다.
2) 기본 매개변수는 함수 호출 시 생략할 수 있다.
3) 기본 매개변수는 함수 정의 시 사용할 수 없다.
4) 기본 매개변수는 전달되지 않은 경우 기본값을 사용하지 않는다.

정답: 2

해설: 기본 매개변수는 함수 호출 시 생략할 수 있으며, 이 경우 정의된 기본값을 사용합니다. 기본 매개변수는 함수 정의 시 일반 매개변수 뒤에 위치해야 합니다.

96. 다음 중 파이썬 함수의 가변 매개변수에 대한 설명으로 옳은 것은?

1) 가변 매개변수는 함수 정의 시 여러 개 사용할 수 있다.
2) 가변 매개변수는 함수 호출 시 전달된 모든 값을 리스트로 받는다.
3) 가변 매개변수는 항상 일반 매개변수 앞에 와야 한다.
4) 가변 매개변수는 함수 호출 시 전달된 모든 값을 튜플로 받는다.

정답: 4

해설: 가변 매개변수는 함수 호출 시 전달된 모든 값을 튜플로 받습니다. 가변 매개변수는 함수 정의 시 하나만 사용할 수 있으며, 일반 매개변수 뒤에 위치해야 합니다.

 

97. 다음 중 파이썬의 객체지향 프로그래밍에 대한 설명으로 옳은 것은?

1) 객체지향 프로그래밍에서는 모든 함수가 클래스 내부에 정의되어야 한다.
2) 객체지향 프로그래밍은 프로그램을 객체와 객체 사이의 상호작용으로 구성하는 패러다임이다.
3) 객체지향 프로그래밍에서는 상속을 사용할 수 없다.
4) 객체지향 프로그래밍은 소규모 소프트웨어 개발에 적합하다.

정답: 2

해설: 객체지향 프로그래밍은 프로그램을 객체와 객체 사이의 상호작용으로 구성하는 프로그래밍 패러다임입니다. 이를 통해 프로그램을 유연하고 변경을 쉽게 만들어 대규모 소프트웨어 개발에 사용됩니다.

98. 다음 중 파이썬 클래스 정의에 대한 설명으로 옳은 것은?

1) 클래스의 이름은 항상 소문자로 시작해야 한다.
2) 클래스의 생성자는 `__init__` 메소드를 통해 정의된다.
3) 클래스는 하나의 메소드만 가질 수 있다.
4) 클래스 내부에서는 `self` 키워드를 사용할 수 없다.

정답: 2

해설: 파이썬 클래스의 생성자는 `__init__` 메소드를 통해 정의되며, 클래스 내부의 메소드들은 `self` 키워드를 사용하여 객체의 상태나 다른 메소드에 접근할 수 있습니다. 클래스 이름은 대문자로 시작하는 것이 관례입니다.

99. 다음 중 파이썬의 캡슐화에 대한 설명으로 옳은 것은?

1) 모든 데이터 필드는 외부에서 접근 가능해야 한다.
2) 데이터 필드를 직접 변경하지 못하게 하는 것이 캡슐화이다.
3) 캡슐화는 데이터 필드와 메소드를 분리하는 것을 의미한다.
4) 파이썬에서는 캡슐화를 구현할 수 없다.

정답: 2

해설: 캡슐화는 데이터 구조와 데이터를 조작하는 메소드를 결합하여, 외부에서 데이터 필드를 직접 변경하지 못하게 하는 것을 의미합니다. 이를 통해 데이터의 무결성을 유지하고, 객체의 상태를 안전하게 보호할 수 있습니다.

100. 다음 중 파이썬에서 클래스와 인스턴스의 차이점에 대한 설명으로 옳은 것은?

1) 클래스는 구체적인 객체를 나타내고, 인스턴스는 일반적인 개념을 나타낸다.
2) 클래스는 메모리에 저장되지만, 인스턴스는 메모리에 저장되지 않는다.
3) 클래스는 객체의 설계도이며, 인스턴스는 클래스에 따라 생성된 구체적인 객체이다.
4) 클래스와 인스턴스는 동일한 개념이다.

정답: 3

해설: 클래스는 객체의 설계도를 나타내며, 인스턴스는 그 설계도에 따라 생성된 구체적인 객체를 의미합니다. 따라서 클래스는 추상적인 개념이고, 인스턴스는 메모리에 저장되어 실제로 동작하는 객체입니다.

 

 

 

101. 다음 중 파이썬에서 클래스의 `__init__` 메소드에 대한 설명으로 옳은 것은?

1) `__init__` 메소드는 클래스의 인스턴스가 삭제될 때 호출된다.
2) `__init__` 메소드는 클래스의 인스턴스를 초기화하는 생성자 메소드이다.
3) `__init__` 메소드는 클래스 내부에서만 호출될 수 있다.
4) `__init__` 메소드는 클래스 외부에서 직접 호출해야 한다.

정답: 2

해설: `__init__` 메소드는 파이썬에서 생성자 메소드로, 클래스의 인스턴스를 초기화하는 역할을 합니다. 인스턴스가 생성될 때 자동으로 호출되며, 클래스 외부에서 직접 호출할 필요가 없습니다.

102. 다음 중 파이썬에서 데이터 은닉(data hiding)에 대한 설명으로 옳은 것은?

1) 데이터 은닉은 모든 데이터 필드를 공개하는 것을 의미한다.
2) 데이터 은닉은 데이터 필드의 직접 접근을 막기 위해 사용하는 개념이다.
3) 데이터 은닉은 메소드의 접근을 제한하는 것을 의미한다.
4) 파이썬에서는 데이터 은닉을 구현할 수 없다.

정답: 2

해설: 데이터 은닉은 클래스 내부의 데이터 필드를 외부에서 직접 접근하지 못하도록 하는 개념입니다. 이를 통해 데이터의 무결성을 보호하고, 객체의 상태를 안전하게 유지할 수 있습니다.

103. 다음 중 파이썬에서 `self` 매개변수에 대한 설명으로 옳은 것은?

1) `self` 매개변수는 클래스 메소드 내부에서 객체 자신을 참조하는 데 사용된다.
2) `self` 매개변수는 클래스 외부에서 호출된다.
3) `self` 매개변수는 반드시 사용해야 하는 것은 아니다.
4) `self` 매개변수는 클래스의 데이터 필드를 초기화할 수 없다.

정답: 1

해설: `self` 매개변수는 클래스 메소드의 첫 번째 매개변수로, 메소드 내부에서 객체 자신을 참조하는 데 사용됩니다. 이를 통해 클래스의 데이터 필드와 메소드에 접근할 수 있습니다.

104. 다음 중 파이썬의 상속에 대한 설명으로 옳은 것은?

1) 상속은 하위 클래스가 상위 클래스의 모든 메소드를 무시하는 것을 의미한다.
2) 상속은 하위 클래스가 상위 클래스의 일부 메소드만 상속받는 것을 의미한다.
3) 상속은 하위 클래스가 상위 클래스의 모든 속성과 메소드를 물려받는 것을 의미한다.
4) 파이썬에서는 상속을 구현할 수 없다.

정답: 3

해설: 상속은 객체지향 프로그래밍에서 하위 클래스가 상위 클래스의 모든 속성과 메소드를 물려받는 것을 의미합니다. 이를 통해 코드의 재사용성을 높이고, 계층적인 클래스 구조를 설계할 수 있습니다.

 

 

 

105. 다음 중 파이썬의 모듈에 대한 설명으로 옳은 것은?

1) 모듈은 파이썬에서 하나의 파일로만 구성된다.
2) 모듈은 함수, 클래스, 상수를 포함할 수 있다.
3) 모듈은 다른 모듈을 포함할 수 없다.
4) 모듈은 반드시 네임스페이스를 지정해야 한다.

정답: 2

해설: 모듈은 함수, 클래스, 상수 등을 포함하는 집합체로, 코드의 재사용성을 높이고 구조를 체계적으로 관리할 수 있게 해줍니다.

106. 다음 중 파이썬의 패키지에 대한 설명으로 옳은 것은?

1) 패키지는 하나의 파일로 구성된다.
2) 패키지는 하위 패키지와 모듈의 집합체이다.
3) 패키지는 모듈을 포함할 수 없다.
4) 패키지는 함수와 클래스로만 구성된다.

정답: 2

해설: 패키지는 하위 패키지와 모듈의 집합체로, 여러 모듈을 논리적으로 묶어 관리할 수 있게 해줍니다.

107. 다음 중 파이썬에서 `import` 구문에 대한 설명으로 옳은 것은?

1) `import` 구문은 모듈의 특정 함수나 클래스만 가져올 수 없다.
2) `import` 구문은 모듈을 네임스페이스에 추가하는 명령어이다.
3) `import` 구문은 항상 `from` 키워드와 함께 사용해야 한다.
4) `import` 구문은 변수만 가져올 수 있다.

정답: 2

해설: `import` 구문은 모듈을 네임스페이스에 추가하여, 모듈의 함수나 클래스를 사용할 수 있게 하는 명령어입니다.

108. 다음 중 파이썬의 `math` 모듈에 대한 설명으로 옳은 것은?

1) `math` 모듈은 문자열 처리를 위한 함수들을 제공한다.
2) `math` 모듈은 수학적 계산 문제를 해결하기 위한 함수와 상수를 제공한다.
3) `math` 모듈은 네트워크 관련 기능을 제공한다.
4) `math` 모듈은 파일 입출력 기능을 제공한다.

정답: 2

해설: `math` 모듈은 수학적 계산 문제를 해결하기 위한 함수와 상수를 제공하며, C 언어 표준에 정의된 수학적 계산 함수도 포함하고 있습니다.

 

 

 

109. 다음 중 파이썬의 `random` 모듈에 대한 설명으로 옳은 것은?

1) `random` 모듈은 문자열 처리를 위한 함수들을 제공한다.
2) `random` 모듈은 수학적 계산 문제를 해결하기 위한 함수와 상수를 제공한다.
3) `random` 모듈은 난수를 생성하는 기능을 제공한다.
4) `random` 모듈은 파일 입출력 기능을 제공한다.

정답: 3

해설: `random` 모듈은 난수 관련된 생성 기능을 제공하며, 특정 범위의 난수를 발생시키는 함수들을 포함하고 있습니다.

110. 다음 중 `time` 모듈의 기능에 대한 설명으로 옳은 것은?

1) `time` 모듈은 네트워크 관련 기능을 제공한다.
2) `time` 모듈은 수학적 계산 문제를 해결하기 위한 함수와 상수를 제공한다.
3) `time` 모듈은 파일 입출력 기능을 제공한다.
4) `time` 모듈은 에포크 시간을 얻고 다양한 형식으로 표시하는 기능을 제공한다.

정답: 4

해설: `time` 모듈은 에포크 시간을 얻어 다양한 형식으로 표시하는 기능을 제공하며, 시간과 관련된 여러 유용한 함수들을 포함하고 있습니다.

111. 다음 중 `math` 모듈의 `sqrt` 함수에 대한 설명으로 옳은 것은?

1) `sqrt` 함수는 주어진 수의 로그값을 반환한다.
2) `sqrt` 함수는 주어진 수의 절대값을 반환한다.
3) `sqrt` 함수는 주어진 수의 제곱근을 반환한다.
4) `sqrt` 함수는 주어진 수의 지수값을 반환한다.

정답: 3

해설: `sqrt` 함수는 주어진 수의 제곱근을 계산하여 반환하는 함수입니다.

112. 다음 중 파이썬의 네임스페이스에 대한 설명으로 옳은 것은?

1) 네임스페이스는 함수 내부에서만 유효하다.
2) 네임스페이스는 전역 변수와 지역 변수를 구분하지 않는다.
3) 네임스페이스는 특정 객체를 이름에 따라 구분할 수 있는 범위를 의미한다.
4) 네임스페이스는 모듈 간의 이름 충돌을 일으킨다.

정답: 3

해설: 네임스페이스는 특정 객체를 이름에 따라 구분할 수 있는 범위를 의미하며, 지역 네임스페이스, 전역 네임스페이스, 빌트인 네임스페이스가 있습니다.

 

 

 

113. 다음 중 파이썬의 파일 읽기 함수에 대한 설명으로 옳은 것은?

1) `readlines()` 함수는 파일의 특정 개수의 문자를 반환한다.
2) `readline()` 함수는 파일의 모든 내용을 리스트로 반환한다.
3) `read()` 함수는 파일의 특정 개수의 문자를 반환한다.
4) `read()` 함수는 파일의 한 라인의 문자열을 반환한다.

정답: 3

해설: `read()` 함수는 파일의 특정 개수의 문자를 반환하는 함수입니다. `readline()` 함수는 파일의 한 라인의 문자열을 반환하고, `readlines()` 함수는 파일의 모든 내용을 리스트로 반환합니다.

114. 다음 중 파일을 작성하기 위해 사용되는 모드로 알맞은 것은?

1) 'r'
2) 'w'
3) 'x'
4) 'b'

정답: 2

해설: 'w' 모드는 새로운 파일을 작성하거나 기존 파일을 덮어쓰는 용도로 사용됩니다. 'r'은 읽기 모드, 'x'는 파일이 존재하지 않을 때만 새로운 파일을 작성하는 모드, 'b'는 바이너리 모드입니다.

115. 다음 중 파이썬의 파일 객체를 생성하는 구문으로 옳은 것은?

1) file = open("filename")
2) file = open("filename", "rb")
3) file = create("filename")
4) file = open("filename", "x")

정답: 2

해설: `open("filename", "rb")`는 파일을 읽기 바이너리 모드로 여는 구문입니다. `open("filename")`는 기본적으로 읽기 모드로 열지만 모드를 명시하지 않았고, `create("filename")`는 존재하지 않는 함수이며, `open("filename", "x")`는 파일이 존재하지 않을 때만 파일을 생성합니다.

116. 다음 중 `write()` 함수에 대한 설명으로 옳은 것은?

1) `write()` 함수는 파일의 모든 내용을 지우고 파일 객체를 닫는다.
2) `write()` 함수는 파일의 특정 개수의 문자를 반환한다.
3) `write()` 함수는 파일의 특정 지점에 문자열을 작성한다.
4) `write()` 함수는 파일의 마지막에 문자열을 덧붙인다.

정답: 3

해설: `write()` 함수는 파일 포인터가 위치한 지점에 문자열을 작성하는 함수입니다. 파일의 마지막에 문자열을 덧붙이는 작업은 'a' 모드로 파일을 열고 `write()` 함수를 사용할 때 가능합니다.

 

 

 

117. 다음 중 파일 포인터가 파일의 끝(EoF)에 도달했는지 확인하는 방법으로 옳은 것은?

1) file.eof()
2) file.seek(0, 2)
3) file.tell() == file.seek(0, 2)
4) file.read() == ''

정답: 4

해설: `file.read() == ''`는 파일 포인터가 파일의 끝에 도달했을 때 더 이상 읽을 데이터가 없음을 의미하여, 이 방법으로 EoF를 확인할 수 있습니다. `file.eof()`는 파이썬에 존재하지 않는 메서드이며, `file.seek(0, 2)`는 파일 포인터를 파일의 끝으로 이동시키는 함수이고, `file.tell() == file.seek(0, 2)`는 동작하지 않습니다.

118. 다음 중 텍스트 파일을 읽기 모드로 열고 파일의 내용을 모두 읽어오는 구문으로 알맞은 것은?

1) file = open("filename.txt", "r")
   content = file.read()
   file.close()
2) file = open("filename.txt", "w")
   content = file.read()
   file.close()
3) file = open("filename.txt", "r")
   content = file.readline()
   file.close()
4) file = open("filename.txt", "a")
   content = file.read()
   file.close()

정답: 1

해설: 파일을 읽기 모드로 열기 위해서는 `open("filename.txt", "r")`를 사용하고, `file.read()`로 파일의 내용을 모두 읽어올 수 있습니다. 다른 선택지는 쓰기 모드 또는 추가 모드로 파일을 열기 때문에 읽기 작업이 불가능합니다.

119. 다음 중 `readlines()` 함수에 대한 설명으로 옳은 것은?

1) 파일의 특정 라인을 반환한다.
2) 파일의 모든 내용을 하나의 문자열로 반환한다.
3) 파일의 모든 라인을 리스트 형태로 반환한다.
4) 파일의 모든 내용을 바이트 형태로 반환한다.

정답: 3

해설: `readlines()` 함수는 파일의 모든 라인을 읽어 각각의 라인을 리스트 형태로 반환하는 함수입니다. 

120. 다음 중 `write()` 함수로 파일에 데이터를 기록할 때 주의할 점으로 옳은 것은?

1) `write()` 함수는 항상 파일의 끝에 데이터를 추가한다.
2) `write()` 함수는 기존 파일의 내용을 유지하면서 새로운 데이터를 추가한다.
3) `write()` 함수는 파일 포인터가 위치한 지점에 데이터를 기록하며, 'w' 모드로 열 경우 기존 내용을 덮어쓴다.
4) `write()` 함수는 데이터를 기록한 후 파일 포인터를 파일의 시작으로 이동시킨다.

정답: 3

해설: `write()` 함수는 파일 포인터가 위치한 지점에 데이터를 기록하며, 파일을 'w' 모드로 열 경우 기존 파일 내용을 모두 삭제하고 새롭게 데이터를 기록합니다.

 

 

 

121. 다음 중 소프트웨어 개발 라이프사이클(SDLC)의 단계로 올바르게 나열된 것은?

1) 비용, 기간, 자원 계획 수립 → 프로그램 작성 → 요구 반영, 예상 결과 유사 검증 및 오류 파악 → 프로그램 오류 수정, 새로운 요구 추가
2) 프로그램 작성 → 비용, 기간, 자원 계획 수립 → 요구 반영, 예상 결과 유사 검증 및 오류 파악 → 프로그램 오류 수정, 새로운 요구 추가
3) 비용, 기간, 자원 계획 수립 → 프로그램 오류 수정, 새로운 요구 추가 → 요구 반영, 예상 결과 유사 검증 및 오류 파악 → 프로그램 작성
4) 프로그램 오류 수정, 새로운 요구 추가 → 비용, 기간, 자원 계획 수립 → 요구 반영, 예상 결과 유사 검증 및 오류 파악 → 프로그램 작성

정답: 1

해설: 소프트웨어 개발 라이프사이클(SDLC)은 비용, 기간, 자원 계획 수립부터 시작하여 프로그램 작성, 요구 반영 및 오류 파악, 프로그램 오류 수정과 새로운 요구 추가의 순서로 진행됩니다.

122. 다음 중 이벤트 기반 프로그래밍(EDP)에 대한 설명으로 옳은 것은?

1) 모든 프로그램의 실행 흐름을 미리 예측할 수 있다.
2) 이벤트가 발생하지 않으면 프로그램은 실행되지 않는다.
3) 이벤트는 사용자 입력에 의해서만 발생한다.
4) GUI 환경에서는 사용되지 않는다.

정답: 2

해설: 이벤트 기반 프로그래밍(EDP)은 이벤트가 발생할 때만 프로그램이 실행되는 방식입니다. 따라서 이벤트가 발생하지 않으면 프로그램은 실행되지 않습니다. 이벤트는 사용자 입력 외에도 타이머, 프로그램 등 다양한 원인에 의해 발생할 수 있습니다.

123. 틱택토 게임에서 승리 조건이 아닌 것은?

1) 가로로 동일한 기호가 3개 연속으로 나오는 경우
2) 세로로 동일한 기호가 3개 연속으로 나오는 경우
3) 대각선으로 동일한 기호가 3개 연속으로 나오는 경우
4) 3개의 칸에 다른 기호가 교차하여 나오는 경우

정답: 4

해설: 틱택토 게임의 승리 조건은 가로, 세로, 대각선으로 동일한 기호가 3개 연속으로 나오는 경우입니다. 다른 기호가 교차하여 나오는 경우는 승리 조건에 해당하지 않습니다.

124. 다음 중 틱택토 게임의 요구사항에 해당하지 않는 것은?

1) 게임 시작 시 무작위로 시작할 플레이어를 선택한다.
2) 플레이어는 사용자와 컴퓨터로, 각각 O와 X 기호를 사용한다.
3) 게임 진행 중 언제든지 기호를 변경할 수 있다.
4) 승리, 무승부, 종료 요청 시 게임이 종료된다.

정답: 3

해설: 틱택토 게임의 요구사항에는 게임 시작 시 무작위로 시작할 플레이어를 선택하고, 플레이어는 O와 X 기호를 사용하며, 승리, 무승부, 종료 요청 시 게임이 종료된다는 조건이 포함되어 있습니다. 게임 진행 중 기호를 변경하는 기능은 요구사항에 포함되지 않습니다.

 

 

 

125. 다음 중 2차원 리스트에 대한 설명으로 옳은 것은?

1) 2차원 리스트는 단일 값을 저장할 수 있는 데이터 타입이다.
2) 2차원 리스트는 리스트 내에 리스트를 내포한 구조를 가진다.
3) 2차원 리스트는 생성 시 반드시 정해진 크기를 가져야 한다.
4) 2차원 리스트는 한 번 생성되면 크기를 변경할 수 없다.

정답: 2

해설: 2차원 리스트는 리스트 내에 리스트가 내포된 구조를 가지며, 이를 통해 행과 열의 형태로 데이터를 저장할 수 있습니다. 2차원 리스트는 생성 시 정해진 크기를 가질 필요가 없으며, 동적으로 크기를 변경할 수 있습니다.

126. 다음 코드의 출력 결과로 올바른 것은?

```
distance = [
    [0, 151, 290],
    [151, 0, 178],
    [290, 178, 0]
]

for dep in distance:
    for des in dep:
        print(des, end=" ")
    print()
```

1) 0 151 290 151 0 178 290 178 0
2) 0 151 290
   151 0 178
   290 178 0
3) 0 151 151 0 290 178 178 0 290
4) 0 290 151 0 178 178 0 151 290

정답: 2

해설: 중첩된 반복문을 통해 2차원 리스트의 각 요소를 순차적으로 출력합니다. 첫 번째 반복문은 행을, 두 번째 반복문은 각 행의 요소를 순회하며, 각 요소를 한 줄씩 출력합니다.

127. 다음 중 2차원 리스트를 동적으로 생성하는 코드로 올바른 것은?

1) distance = [[0]*5]*5
2) distance = [[0 for _ in range(5)] for _ in range(5)]
3) distance = ([0]*5)*5
4) distance = ([0 for _ in range(5)])*5

정답: 2

해설: 2차원 리스트를 동적으로 생성하기 위해서는 리스트 내포(list comprehension)를 사용하여 각 행을 반복문으로 생성해야 합니다. 정답인 코드는 각 행마다 새로운 리스트를 생성하여 2차원 리스트를 만듭니다.

128. 다음 중 2차원 리스트의 순회에 대한 설명으로 옳지 않은 것은?

1) 2차원 리스트를 순회하기 위해서는 이중 반복문을 사용할 수 있다.
2) 외부 반복문은 행을, 내부 반복문은 각 행의 요소를 순회한다.
3) 2차원 리스트는 단일 반복문으로도 모든 요소를 순회할 수 있다.
4) 순회 시 각 요소의 인덱스를 함께 출력할 수 있다.

정답: 3

해설: 2차원 리스트를 순회하기 위해서는 일반적으로 이중 반복문을 사용합니다. 외부 반복문은 행을 순회하고, 내부 반복문은 각 행의 요소를 순회합니다. 단일 반복문으로는 2차원 리스트의 모든 요소를 순회할 수 없습니다. 인덱스를 함께 출력하기 위해 enumerate() 함수를 사용할 수 있습니다.

 



129. 다음 중 2차원 리스트에 접근하는 코드로 올바른 것은?

1) distance[1, 2]
2) distance[1][2]
3) distance(1)(2)
4) distance{1}{2}

정답: 2

해설: 2차원 리스트에 접근하기 위해서는 리스트의 리스트 형태로 접근해야 합니다. 올바른 접근 방식은 distance[1][2]입니다.

130. 다음 중 2차원 리스트를 순회하며 각 요소를 출력하는 코드로 올바른 것은?

1) for i in range(len(distance)):
       for j in range(len(distance[i])):
           print(distance[i][j], end=" ")
       print()
2) for row in distance:
       for elem in row:
           print(elem)
3) for i in distance:
       for j in i:
           print(j, end=" ")
4) 이상 모두

정답: 4

해설: 2차원 리스트를 순회하며 각 요소를 출력하는 여러 가지 방법이 있습니다. 위의 세 가지 방법 모두 올바르게 2차원 리스트를 순회하며 각 요소를 출력합니다.

131. 다음 중 2차원 리스트의 동적 생성에 대한 설명으로 옳지 않은 것은?

1) 빈 리스트를 먼저 생성한 후, 행을 반복문으로 추가한다.
2) 각 행은 내부 반복문을 통해 열의 개수만큼 원소를 추가한다.
3) 반복문을 사용하지 않고 단일 리스트 내포로 생성할 수 있다.
4) 임의의 값을 추가하기 위해 random 모듈을 사용할 수 있다.

정답: 3

해설: 2차원 리스트를 동적으로 생성하기 위해서는 반복문을 사용하여 각 행과 열을 구성해야 합니다. 단일 리스트 내포로는 2차원 리스트를 동적으로 생성할 수 없습니다.

132. 다음 중 주어진 2차원 리스트 distance에서 "서울"에서 "대구"까지의 거리를 출력하는 코드로 올바른 것은?

1) print(distance[0][3])
2) print(distance[1][2])
3) print(distance[0][2])
4) print(distance[1][3])

정답: 1

해설: 2차원 리스트에서 특정 요소를 출력하기 위해서는 정확한 인덱스를 사용해야 합니다. "서울"에서 "대구"까지의 거리는 첫 번째 행과 네 번째 열에 위치하고 있으므로 distance[0][3]이 올바른 코드입니다.

 

 

 

133. 다음 중 math 모듈을 사용하여 사인 값을 계산하는 올바른 방법은?

1) result = math.sin(90)
2) result = math.sin(math.radians(90))
3) result = math.sin(math.degrees(90))
4) result = sin(90)

정답: 2

해설: math 모듈에서 사인 값을 계산할 때는 각도를 라디안 값으로 변환해야 합니다. 따라서 math.sin(math.radians(90))이 올바른 코드입니다.

134. 다음 중 summation 함수를 올바르게 호출하는 방법은?

1) result = summation(1, 2, 3)
2) result = summation([1, 2, 3])
3) result = summation((1, 2, 3))
4) result = summation({1, 2, 3})

정답: 1

해설: summation 함수는 가변 인자를 받아 합계를 계산합니다. 따라서 개별 인자를 나열하는 summation(1, 2, 3)이 올바른 호출 방법입니다.

135. 다음 중 "Khan.txt" 파일에서 모든 줄을 읽어 리스트로 저장하는 올바른 코드는?

1) khan_mottos = khan_fp.readlines()
2) khan_mottos = readlines(khan_fp)
3) khan_mottos = khan_fp.read()
4) khan_mottos = khan_fp.readline()

정답: 1

해설: readlines() 메서드는 파일의 모든 줄을 읽어 리스트로 반환합니다. 따라서 khan_fp.readlines()가 올바른 코드입니다.

136. 다음 중 딕셔너리에서 키가 존재하는지 확인하는 올바른 코드는?

1) if word in wdict.keys():
2) if word in wdict:
3) if wdict.has_key(word):
4) if wdict.contains(word):

정답: 2

해설: 딕셔너리에서 키의 존재 여부를 확인할 때는 in 연산자를 사용하여 if word in wdict:와 같이 표현합니다.

 

 

 

137. 다음 중 while 루프를 사용하여 1부터 10까지의 숫자를 출력하는 올바른 코드는?

1) 
while i < 10:
    print(i)
    i += 1

2) 
i = 1
while i <= 10:
    print(i)
    i += 1

3) 
i = 1
while i < 10:
    print(i)
    i = 1 + i

4) 
i = 1
while i <= 10:
    i += 1
    print(i)

정답: 2

해설: while 루프를 사용하여 1부터 10까지의 숫자를 출력하려면 초기 값을 1로 설정하고, i가 10 이하일 때까지 루프를 실행하며 i를 출력하고 i 값을 1씩 증가시켜야 합니다. 따라서 i = 1로 초기화하고 while i <= 10:으로 조건을 설정한 후 print(i)와 i += 1을 포함한 코드가 올바릅니다.

138. 다음 중 특정 파일을 '읽기' 모드로 여는 올바른 코드는?

1) file = open("example.txt", "r")
2) file = open("example.txt", "w")
3) file = open("example.txt", "a")
4) file = open("example.txt", "rb")

정답: 1

해설: 파일을 '읽기' 모드로 열려면 open 함수의 두 번째 인수로 "r"을 전달해야 합니다. 나머지 옵션은 각각 '쓰기', '추가' 및 '바이너리 읽기' 모드를 나타냅니다.

139. 다음 중 파이썬에서 모듈을 가져오는 올바른 방법은?

1) import math, random
2) from math import
3) import "math"
4) include math

정답: 1

해설: 파이썬에서 여러 모듈을 가져오려면 import 문을 사용하여 import math, random과 같이 작성할 수 있습니다. 다른 옵션은 문법적으로 잘못되었거나 존재하지 않는 키워드를 사용하고 있습니다.

140. 다음 중 주어진 숫자가 짝수인지 확인하는 올바른 코드는?

1) 
if number % 2 == 0:
    print("짝수")

2) 
if number / 2 == 0:
    print("짝수")

3) 
if number // 2 == 0:
    print("짝수")

4) 
if number % 2 != 0:
    print("짝수")

정답: 1

해설: 주어진 숫자가 짝수인지 확인하려면 숫자를 2로 나눈 나머지가 0인지 확인해야 합니다. 따라서 if number % 2 == 0:이 올바른 코드입니다.

 

 

141. 다음 중 파이썬에서 파일을 '쓰기' 모드로 여는 올바른 코드는?

1) file = open("example.txt", "r")

2) file = open("example.txt", "w")

3) file = open("example.txt", "a")

4) file = open("example.txt", "wb")

정답: 2

해설: 파일을 '쓰기' 모드로 열려면 open 함수의 두 번째 인수로 "w"를 전달해야 합니다. "r"은 '읽기' 모드, "a"는 '추가' 모드, "wb"는 '바이너리 쓰기' 모드를 나타냅니다.

142. 다음 중 주어진 리스트 numbers에서 최대값을 찾는 올바른 코드는?

1) max_value = max(numbers)

2) max_value = numbers.max()

3) max_value = maximum(numbers)

4) max_value = max(numbers[])

정답: 1

해설: 파이썬 내장 함수 max()를 사용하여 리스트의 최대값을 찾을 수 있습니다. 다른 옵션은 문법적으로 잘못되었거나 존재하지 않는 함수입니다.

143. 다음 중 문자열 "Hello, World!"에서 모든 문자를 대문자로 변환하는 올바른 코드는?

1) result = "Hello, World!".upper()

2) result = "Hello, World!".capitalize()

3) result = upper("Hello, World!")

4) result = "Hello, World!".toupper()

정답: 1

해설: 문자열 메서드 upper()는 문자열의 모든 문자를 대문자로 변환합니다. capitalize()는 첫 문자를 대문자로 변환하고, toupper()는 존재하지 않는 메서드입니다.

144. 다음 중 파이썬에서 리스트 [1, 2, 3, 4, 5]의 길이를 구하는 올바른 코드는?

1) length = length([1, 2, 3, 4, 5])

2) length = len([1, 2, 3, 4, 5])

3) length = [1, 2, 3, 4, 5].length()

4) length = [1, 2, 3, 4, 5].len()

정답: 2

해설: 파이썬 내장 함수 len()을 사용하여 리스트의 길이를 구할 수 있습니다. 다른 옵션은 문법적으로 잘못되었거나 존재하지 않는 메서드입니다.

 

 

 

145. 다음 중 파이썬에서 문자열 "Python Programming"의 첫 번째 문자를 대문자로 변환하고 나머지 문자를 소문자로 변환하는 올바른 코드는?

1) result = "Python Programming".upper()

2) result = "Python Programming".lower()

3) result = "Python Programming".title()

4) result = "Python Programming".capitalize()

정답: 4

해설: capitalize() 메서드는 문자열의 첫 문자를 대문자로 변환하고 나머지 문자는 소문자로 변환합니다. upper()는 모든 문자를 대문자로, lower()는 모든 문자를 소문자로, title()은 각 단어의 첫 문자를 대문자로 변환합니다.

146. 다음 중 파이썬에서 리스트 [10, 20, 30, 40, 50]의 두 번째 요소를 가져오는 올바른 코드는?

1) element = [10, 20, 30, 40, 50][1]

2) element = [10, 20, 30, 40, 50].get(2)

3) element =  

4) element = [10, 20, 30, 40, 50].index(1)

정답: 1

해설: 리스트에서 특정 요소를 가져오기 위해서는 인덱스를 사용합니다. 인덱스는 0부터 시작하며, [1]은 리스트의 두 번째 요소를 나타냅니다. 다른 옵션은 문법적으로 잘못되었거나 존재하지 않는 메서드입니다.

147. 다음 중 파이썬에서 "apple"과 "banana" 문자열을 합치는 올바른 코드는?

1) result = "apple".join("banana")

2) result = "apple" + "banana"

3) result = "apple".append("banana")

4) result = concat("apple", "banana")

정답: 2

해설: 문자열을 합치기 위해서는 + 연산자를 사용합니다. join()은 문자열을 특정 구분자로 합칠 때 사용되며, append()는 리스트에 요소를 추가하는 메서드이고, concat()은 존재하지 않는 함수입니다.

148. 다음 중 주어진 리스트 [1, 2, 3, 4, 5]에서 요소 3을 제거하는 올바른 코드는?

1) list.remove(3)

2) list.pop(3)

3) list.delete(3)

4) list = [1, 2, 4, 5]

정답: 1

해설: remove() 메서드는 리스트에서 특정 요소를 제거합니다. pop()은 주어진 인덱스의 요소를 제거하고 반환하며, delete()는 존재하지 않는 메서드입니다. 네 번째 옵션은 리스트를 새로 할당하는 방법이지만 요소를 제거하는 직접적인 방법은 아닙니다.

 

 

 



149. 다음 중 math 모듈의 삼각함수를 사용하는 올바른 방법은?

1) import sin, radians from math

2) import math.sin, math.radians

3) from math import sin, radians

4) import math

정답: 3

해설: math 모듈의 특정 함수만 사용하려면 `from math import 함수1, 함수2` 형식을 사용합니다. 전체 모듈을 불러오려면 `import math`를 사용하고, 함수만 개별적으로 불러오는 형식은 1번, 2번은 올바르지 않습니다.

150. 다음 중 매개변수로 전달된 숫자를 역순으로 출력하는 함수에서 빈칸에 알맞은 연산자는?

```python
def reverse_digit(number):
    while number != 0:
        digit = number % 10
        number = number __ 10
        print(digit, end="")
```

1) ==

2) /

3) %

4) //

정답: 4

해설: 숫자를 10으로 나눠서 자릿수를 줄이는 방법으로는 정수 나눗셈 연산자인 //를 사용합니다. %는 나머지를 구하는 연산자이고, /는 실수 나눗셈 연산자입니다.

151. 다음 중 객체와 객체 사이의 상호작용으로 프로그램을 구성하는 프로그래밍 패러다임은?

1) 명령형 프로그래밍

2) 객체지향 프로그래밍

3) 구조적 프로그래밍

4) 함수형 프로그래밍

정답: 2

해설: 객체지향 프로그래밍은 객체 간의 상호작용을 통해 프로그램을 구성합니다. 명령형 프로그래밍은 명령어의 순차적 실행에 중점을 두고, 구조적 프로그래밍은 절차적 모듈화, 함수형 프로그래밍은 함수 간의 상호작용을 중점으로 합니다.

152. 다음 중 wdict 딕셔너리에 word에 대한 항목 생성 여부를 확인하기 위한 표현으로 알맞은 것은?

1) wdict.keys()

2) wdict.pop(word)

3) wdict.popitem()

4) wdict.get(word)

정답: 4

해설: 딕셔너리에서 특정 키의 존재 여부를 확인하고 해당 키의 값을 가져오려면 get() 메서드를 사용합니다. keys()는 딕셔너리의 모든 키를 반환하고, pop()은 키와 값을 제거하며, popitem()은 임의의 키-값 쌍을 제거합니다.

 

 

 

 

 

 

반응형