Exam: PCAP-31-03
Status: ACTIVE
The PCAP-31-03 exam consists of single-select, multiple-select, coding, scenario-based, and interactive items that assess a candidate’s ability to design, write, and debug multi-module Python programs and apply core object-oriented programming techniques. The exam evaluates practical knowledge of modules and packages, exceptions, string processing, OOP, list comprehensions, lambdas, closures, and file I/O.
Each item is worth a maximum of 40 points. After completion, the candidate’s raw score is normalized and presented as a percentage.
The exam is divided into five sections, each reflecting key areas of Python programming. The weight of each section indicates its importance in the overall exam.
The table below summarizes the distribution of exam items and their corresponding weight within the total exam.
| Section | Section Name | Number of Items | Weight |
|---|---|---|---|
| 1 | Modules and Packages | 6 | 12% |
| 2 | Exceptions | 5 | 14% |
| 3 | Strings | 8 | 18% |
| 4 | Object-Oriented Programming | 12 | 34% |
| 5 | Miscellaneous (List Comprehensions, Lambdas, Closures, I/O) | 9 | 22% |
| 40 | 100% |
Last updated: March 7, 2022
Aligned with Exam PCAP-31-03
Objectives covered by the section → 6 exam items
PCAP-31-03 1.1 – Import and use modules and packages
import, from … import, import as, from … import *dir() functionsys.path variablePCAP-31-03 1.2 – Perform evaluations using the math module
ceil(), floor(), trunc(), factorial(), hypot(), sqrt()PCAP-31-03 1.3 – Generate random values using the random module
random(), seed(), choice(), sample()PCAP-31-03 1.4 – Discover host platform properties using the platform module
platform(), machine(), processor(), system(), version(), python_implementation(), python_version_tuple()PCAP-31-03 1.5 – Create and use user-defined modules and packages
__pycache__ directory__name__ variable__init__.py fileObjectives covered by the section → 5 exam items
PCAP-31-03 2.1 – Handle errors using Python-defined exceptions
try / except, ordering except branches, except … as, grouped exceptionsraise, raise ex; assertargs propertyelse and finally in exception handlingPCAP-31-03 2.2 – Extend the exceptions hierarchy with self-defined exceptions
Objectives covered by the section → 8 exam items
PCAP-31-03 3.1 – Understand machine representation of characters
PCAP-31-03 3.2 – Operate on strings
ord(), chr()in, not inPCAP-31-03 3.3 – Employ built-in string methods
.isxxx(), .join(), .split(), .strip(), .index(), .find(), .rfind()sorted() (ordering strings)Objectives covered by the section → 12 exam items
PCAP-31-03 4.1 – Understand the object-oriented approach
PCAP-31-03 4.2 – Employ class and object properties
__dict__ property (objects vs. classes)PCAP-31-03 4.3 – Equip a class with methods
self parameterPCAP-31-03 4.4 – Discover the class structure
hasattr() (objects vs. classes)__name__, __module__, __bases__PCAP-31-03 4.5 – Build a class hierarchy using inheritance
isinstance(), overriding, is / is not__str__(), diamond problemsPCAP-31-03 4.6 – Construct and initialize objects
Objectives covered by the section → 9 exam items
PCAP-31-03 5.1 – Build complex lists using list comprehensions
if; nested comprehensionsPCAP-31-03 5.2 – Embed lambda functions into code
map(), filter()PCAP-31-03 5.3 – Define and use closures
PCAP-31-03 5.4 – Understand basic input/output terminology
PCAP-31-03 5.5 – Perform input/output operations
open(); errno and its valuesclose(), .read(), .write(), .readline(), readlines()bytearray as an input/output bufferDownload PCAP-31-03 Exam Syllabus in PDF
The Minimally Qualified Candidate (MQC) for the PCAP™ certification can design, develop, and improve multi-module Python applications; analyze and model real-life problems in object-oriented categories; and apply Python’s modules, exceptions, strings, and file I/O to implement correct and maintainable solutions. They can structure programs into packages and modules, use standard libraries effectively, write and test classes with appropriate use of properties and methods, and handle exceptions to ensure robust behavior.
Section 1: Modules and Packages
The MQC can import, qualify, and organize code into reusable modules and packages; configure search paths; and use standard-library modules such as math, random, and platform.
Section 2: Exceptions
The MQC understands the built-in exception hierarchy, can handle, raise, and propagate exceptions appropriately, and can define simple custom exceptions to model domain-specific error conditions.
Section 3: Strings
The MQC can represent, transform, and analyze text using slicing, iteration, membership, and key string methods (.split(), .join(), .strip(), .find(), etc.).
Section 4: Object-Oriented Programming
The MQC can define classes, create objects, use instance and class variables, implement methods (including constructors), apply inheritance and polymorphism, and leverage introspection where appropriate.
Section 5: Miscellaneous
The MQC can employ list comprehensions, lambdas, and closures to write concise code, and can perform basic file I/O in text and binary modes, including buffered operations with bytearray.
To pass the PCAP exam, a candidate must achieve a cumulative average score of at least 70% across all exam blocks.