PCEP Practice Question: Data Types, Variables, Basic I/O and Operators
Which THREE of the following are built-in Python data types? (Choose three.)
⚠ Common exam trap
Python Institute often tests the distinction between built-in types and types available only through modules, so candidates mistakenly choose `array` or `boolean` because they sound familiar, but Python uses `bool` and requires importing `array`.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
str
Option A, str, is correct because str is a built-in Python type representing immutable Unicode text strings, created via literals like 'abc' or the str() constructor. Option C, int, is correct because int is a built-in Python type for arbitrary-precision integers, produced by literals like 42 or int(). Option D, list, is correct because list is a built-in Python type for mutable ordered sequences, created with literals like [1, 2] or list(). Option B, boolean, is not a built-in Python type name; the actual built-in type is bool (a subclass of int), so 'boolean' is not a valid Python type. Option E, array, is not a built-in Python type; arrays are provided by the standard-library array module (array.array) or third-party libraries such as NumPy, not as a core built-in type.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
str
Why this is correct
str is a built-in Python data type representing immutable sequences of Unicode characters, created with quotes or the str() constructor. It is one of the fundamental scalar types available without importing any module, satisfying the question's criterion for a built-in type.
- ✗
boolean
Why it's wrong here
bool is a built-in type, but the question asks for three, and boolean is not a Python type name — the type is bool, with True and False as its only instances. It is tempting because boolean logic is genuinely a core Python concept, and bool would be the correct choice had the option used the actual type name.
- ✓
int
Why this is correct
int is a built-in Python data type representing arbitrary-precision whole numbers, created via literals or the int() constructor. It exists in the interpreter's default namespace without imports, satisfying the question's criterion for a built-in type.
- ✓
list
Why this is correct
list is a built-in Python data type representing an ordered, mutable sequence of elements, created with square brackets or the list() constructor. It is available by default without importing any module, satisfying the question's criterion for a built-in type.
- ✗
array
Why it's wrong here
Python's built-in sequence types are list, tuple, range and str; array is not among them, arriving only via the array module or NumPy. It is tempting because arrays are fundamental in most languages and NumPy arrays dominate data work, so array would be the correct answer if the question asked about third-party or standard-library container modules.
Go deeper
Related to this question
About these practice questions
One of 482 original PCEP practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This PCEP practice question is part of Courseiva's free Python Institute certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the PCEP exam.