PCEP™ – Certified Entry-Level Python Programmer: EXAM SYLLABUS

Exam: PCEP-30-02
Status: ACTIVE


The PCEP-30-02 exam consists of single-select, multiple-select, coding, scenario-based, and interactive items that assess a candidate’s ability to write, understand, and debug simple Python programs. The exam evaluates practical knowledge of Python syntax, semantics, control flow, data types, functions, and basic problem-solving techniques.

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 four blocks, each covering core areas of Python programming. The weight of each block reflects its relative importance in the overall exam.

PCEP-30-02 badge

The table below summarizes the distribution of exam items and their corresponding weight within the total exam.

Block Number Block Name Number of Items Weight
1 Computer Programming and Python Fundamentals 7 18%
2 Control Flow – Conditional Blocks and Loops 8 29%
3 Data Collections – Tuples, Dictionaries, Lists, and Strings 7 25%
4 Functions and Exceptions 8 28%
30 100%

Exam Syllabus

Last updated: February 23, 2022
Aligned with Exam PCEP-30-02


Exam Syllabus Contents


Block 1: Computer Programming and Python Fundamentals

Objectives covered by the block → 7 exam items

PCEP-30-02 1.1 – Understand fundamental terms and definitions

  • interpreting and the interpreter, compilation and the compiler
  • lexis, syntax, and semantics

PCEP-30-02 1.2 – Understand Python’s logic and structure

  • keywords
  • instructions
  • indentation
  • comments

PCEP-30-02 1.3 – Introduce literals and variables into code and use different numeral systems

  • Boolean, integers, floating-point numbers
  • scientific notation
  • strings
  • binary, octal, decimal, and hexadecimal numeral systems
  • variables
  • naming conventions
  • implementing PEP-8 recommendations

PCEP-30-02 1.4 – Choose operators and data types adequate to the problem

  • numeric operators: ** * / % // + –
  • string operators: * +
  • assignment and shortcut operators
  • unary and binary operators
  • priorities and binding
  • bitwise operators: ~ & ^ | << >>
  • Boolean operators: not, and, or
  • Boolean expressions
  • relational operators ( == != > >= < <= )
  • the accuracy of floating-point numbers
  • type casting

PCEP-30-02 1.5 – Perform Input/Output console operations

  • the print() and input() functions
  • the sep= and end= keyword parameters
  • the int() and float() functions

Block 2: Control Flow – Conditional Blocks and Loops

Objectives covered by the block → 8 exam items

PCEP-30-02 2.1 – Make decisions and branch the flow with the if instruction

  • conditional statements: if, if-else, if-elif, if-elif-else
  • multiple conditional statements
  • nesting conditional statements

PCEP-30-02 2.2 – Perform different types of iterations

  • the pass instruction
  • building loops with while, for, range(), and in
  • iterating through sequences
  • expanding loops with while-else and for-else
  • nesting loops and conditional statements
  • controlling loop execution with break and continue

Block 3: Data Collections – Tuples, Dictionaries, Lists, and Strings

Objectives covered by the block → 7 exam items

PCEP-30-02 3.1 – Collect and process data using lists

  • constructing vectors
  • indexing and slicing
  • the len() function
  • list methods: append(), insert(), index(), etc.
  • functions: len(), sorted()
  • the del instruction
  • iterating through lists with the for loop
  • initializing loops
  • the in and not in operators
  • list comprehensions
  • copying and cloning
  • lists in lists: matrices and cubes

PCEP-30-02 3.2 – Collect and process data using tuples

  • tuples: indexing, slicing, building, immutability
  • tuples vs. lists: similarities and differences
  • lists inside tuples and tuples inside lists

PCEP-30-02 3.3 Collect and process data using dictionaries

  • dictionaries: building, indexing, adding and removing keys
  • iterating through dictionaries and their keys and values
  • checking the existence of keys
  • methods: keys(), items(), and values()

PCEP-30-02 3.4 Operate with strings

  • constructing strings
  • indexing, slicing, immutability
  • escaping using the \ character
  • quotes and apostrophes inside strings
  • multi-line strings
  • basic string functions and methods

Block 4: Functions and Exceptions

7 objectives & 19 sub-objectives covered by the block → 8 exam items

PCEP-30-02 4.1 – Decompose the code using functions

  • defining and invoking user-defined functions and generators
  • the return keyword, returning results
  • the None keyword
  • recursion

PCEP-30-02 4.2 – Organize interaction between the function and its environment

  • parameters vs. arguments
  • positional, keyword, and mixed argument passing
  • default parameter values
  • name scopes, name hiding (shadowing), and the global keyword

PCEP-30-02 4.3 – Python Built-In Exceptions Hierarchy

  • BaseException
  • Exception
  • SystemExit
  • KeyboardInterrupt
  • abstract exceptions
  • ArithmeticError
  • LookupError
  • IndexError
  • KeyError
  • TypeError
  • ValueError

PCEP-30-02 4.4 – Basics of Python Exception Handling

  • try-except / the try-except Exception
  • ordering the except branches
  • propagating exceptions through function boundaries
  • delegating responsibility for handling exceptions

Download PCEP-30-02 Exam Syllabus in PDF

MQC Profile

The Minimally Qualified Candidate (MQC) for the PCEP™ certification demonstrates foundational knowledge of programming concepts and the Python language. The MQC can write, analyze, and troubleshoot simple Python programs using standard programming constructs, basic data structures, and built-in functions. They are capable of applying logical thinking to solve straightforward problems and follow established programming practices.

Block 1: Basic Concepts

The MQC understands fundamental programming principles such as syntax, semantics, and logic flow. They can work with literals, variables, comments, and simple expressions, and they know how to perform input and output operations. They understand Python’s execution model, indentation rules, and basic error messages.

Block 2: Data Types, Evaluations, and Basic I/O Operations

The MQC is familiar with Python’s basic data types (int, float, str, bool) and can perform arithmetic and logical operations. They can use built-in functions for type conversion and understand operator precedence. The MQC can read input from the user, process it, and display formatted output using print() and input() functions.

Block 3: Control Flow – Loops and Conditional Statements

The MQC can construct simple decision-making and looping structures using if, elif, else, for, and while. They understand Boolean conditions, comparison, and logical operators, and can use loops to process sequences or repeat actions. They can apply break and continue statements to control loop execution.

Block 4: Data Collections, Functions, and Exceptions

The MQC can create and manipulate basic data structures such as lists, tuples, dictionaries, and strings. They understand how to define and call user-defined functions, pass parameters, and return values. The MQC is also familiar with the concept of variable scope and can use built-in modules (e.g., math, random) effectively. They can recognize and handle simple exceptions using try and except blocks to prevent program crashes.

Overall, the MQC demonstrates a solid understanding of the fundamental elements of programming with Python. They can design, code, and test small programs independently, forming a strong foundation for progression to more advanced Python programming and problem-solving certifications.

Passing Requirement

To pass the PCEP-30-02 exam, a candidate must achieve a cumulative average score of at least 70% across all exam blocks.