PCPP2 Advanced OOP And Performance Practice Question
You are using 'slots' to save memory. What is a significant side effect of defining __slots__ in a class?
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
✓
Dynamic attribute addition is disabled
Classes with __slots__ do not allow the creation of new attributes dynamically unless '__dict__' is explicitly included in __slots__.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Methods cannot be defined
Why it's wrong here
Methods work normally with __slots__.
- ✗
The class cannot be inherited from
Why it's wrong here
Inheritance is possible with __slots__.
- ✓
Dynamic attribute addition is disabled
Why this is correct
Instances cannot have attributes assigned outside the defined slots.
- ✗
The class becomes immutable
Why it's wrong here
__slots__ does not prevent modification of defined attributes.
About these practice questions
Courseiva writes every PCPP2 question from scratch — 194 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed August 2026 · checked against the official Python Institute exam blueprint
This PCPP2 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 PCPP2 exam.