All 5 domains
21 official objectives
52–75 hrs suggested study
-
Domain 01
12%
Section 1 checks how you bring code into a program and organize your own: import forms, the module search path, the math, random and platform modules, and building packages with __init__.py and __name__ checks.
Inside this domain
- Import and use modules and packages
- Perform evaluations using the math module
- Generate random values using the random module
- Discover host platform properties using the platform module
- and 1 more objectives
Watch for Alias keeps the original
- Objectives
- 5
Read the domain guide →
-
Domain 02
14%
Section 2 tests how Python reports and handles errors: which except branch runs, when else and finally execute, what raise and assert do, how the built-in hierarchy is shaped, and how to add your own exception classes.
Inside this domain
- Handle errors using Python-defined exceptions
- Extend the exceptions hierarchy with self-defined exceptions
Watch for Specific handler wins
- Objectives
- 2
Read the domain guide →
-
Domain 03
18%
Section 3 covers how Python stores and manipulates text: character encodings and code points, indexing and slicing immutable strings, comparison and membership, and the built-in methods and sorted() calls that PCAP snippets use constantly.
Inside this domain
- Understand machine representation of characters
- Operate on strings
- Employ built-in string methods
Watch for Numeric string order
- Objectives
- 3
Read the domain guide →
-
Domain 04
34%
Section 4 is the heaviest part of PCAP. It covers classes and objects, class versus instance variables, __dict__ and name mangling, methods and self, introspection, single and multiple inheritance, polymorphism and constructors.
Inside this domain
- Understand the object-oriented approach
- Employ class and object properties
- Equip a class with methods
- Discover the class structure
- and 2 more objectives
Watch for Instance write changes class
- Objectives
- 6
Read the domain guide →
-
Domain 05
22%
Section 5 groups four practical topics: building lists with comprehensions, writing lambdas for map() and filter(), defining closures, and reading and writing files with open(), stream methods, errno codes and bytearray buffers.
Inside this domain
- Build complex lists using list comprehensions
- Embed lambda functions into code
- Define and use closures
- Understand basic input/output terminology
- and 1 more objectives
Watch for map returns a list
- Objectives
- 5
Read the domain guide →
Domain names, weights and objectives come from OpenEDG Python Institute's official outline (PCAP-31-03 exam syllabus, last updated March 7, 2022 (current; PCAP-31-04 pending release, scheduled October 31, 2026)). Question counts and study hours are editorial planning estimates, not official figures. Last reviewed October 2026.