All Practice Exams

100+ Free PCEP Practice Questions

Pass your OpenEDG PCEP — Certified Entry-Level Python Programmer (PCEP-30-02) exam on the first try — instant access, no signup required.

✓ No registration✓ No credit card✓ No hidden fees✓ Start practicing immediately
~70-80% Pass Rate
100+ Questions
100% Free
1 / 10
Question 1
Score: 0/0

Which of the following is NOT a valid Python identifier?

A
B
C
D
to track
2026 Statistics

Key Facts: PCEP Exam

30

Exam Questions

OpenEDG

70%

Passing Score

OpenEDG (cumulative)

40 min

Exam Duration

OpenEDG

$59

Exam Fee

OpenEDG

~23%

Functions & Exceptions

Largest domain

Lifetime

Validity

Does not expire

The PCEP-30-02 exam has 30 questions in 40 minutes with a 70% passing score. Domains: Computer Programming and Python Fundamentals (~17%), Control Flow — Conditional Blocks and Loops (~20%), Data Collections — Tuples, Dictionaries, Lists, and Strings (~20%), Functions and Exceptions (~23%), and Python Module System (~20%). No prerequisites. Lifetime certification with no expiration. Exam fee $59 USD. Delivered online via the OpenEDG Testing Service.

Sample PCEP Practice Questions

Try these sample questions to test your PCEP exam readiness. Each question includes a detailed explanation. Start the interactive quiz above for the full 100+ question experience with AI tutoring.

1Which of the following is NOT a valid Python identifier?
A._my_var
B.my2var
C.2my_var
D.myVar
Explanation: Python identifiers cannot start with a digit. They must begin with a letter (a-z, A-Z) or an underscore, and may then contain letters, digits, and underscores. `2my_var` is invalid because it begins with `2`. `_my_var`, `my2var`, and `myVar` are all valid identifiers (Python is case sensitive).
2What does the following code print? print(2 ** 3 ** 2)
A.64
B.512
C.12
D.36
Explanation: The `**` (exponentiation) operator is right-associative in Python. So `2 ** 3 ** 2` is evaluated as `2 ** (3 ** 2)` = `2 ** 9` = 512, NOT `(2 ** 3) ** 2` = 64. This is a frequent PCEP trick — most binary operators are left-associative, but `**` is the exception.
3What is the output of the following snippet? print(7 // 2, 7 / 2, 7 % 2)
A.3 3.5 1
B.3.5 3 1
C.3 3.5 0
D.4 3.5 1
Explanation: `//` is floor division: `7 // 2` returns `3` (an int when both operands are int). `/` is true division and always returns a float: `7 / 2` returns `3.5`. `%` is the modulo operator: `7 % 2` returns `1`. So the printed output is `3 3.5 1`.
4Which of the following is a valid way to write a comment in Python?
A.// this is a comment
B./* this is a comment */
C.# this is a comment
D.-- this is a comment
Explanation: Python uses the `#` symbol for single-line comments. Everything after `#` on the same line is ignored by the interpreter. `//`, `/* */`, and `--` are comment syntaxes from C/C++/JavaScript and SQL — they are NOT valid in Python.
5What does the following code output? x = 5 y = 2 print(x ** y, x // y)
A.10 2
B.25 2
C.25 2.5
D.10 2.5
Explanation: `x ** y` is exponentiation: 5 ** 2 = 25. `x // y` is floor division: 5 // 2 = 2 (the integer part of 2.5). So the output is `25 2` (separated by a space because `print` uses `sep=' '` by default).
6What is the data type of the literal `3.0`?
A.int
B.float
C.complex
D.decimal
Explanation: Any numeric literal containing a decimal point (or an exponent like `3e2`) is of type `float` in Python. `3` would be `int`, `3+0j` would be `complex`. There is no built-in `decimal` literal — `decimal.Decimal` requires an explicit import and constructor call.
7What is the value of `True + True + False` in Python?
A.TrueTrueFalse
B.2
C.1
D.TypeError
Explanation: In Python, `bool` is a subclass of `int`. `True` is equivalent to `1` and `False` to `0` in numeric contexts. So `True + True + False` evaluates to `1 + 1 + 0` = `2`. No TypeError is raised — booleans participate in arithmetic.
8What does this code print? print(0b101 + 0o10 + 0x10)
A.33
B.29
C.45
D.21
Explanation: `0b101` is binary 5, `0o10` is octal 8, `0x10` is hexadecimal 16. Sum: 5 + 8 + 16 = 29. Python supports prefixes `0b`, `0o`, and `0x` for binary, octal, and hexadecimal integer literals.
9What does the following snippet print? a = 10 a += 5 a *= 2 print(a)
A.20
B.30
C.25
D.15
Explanation: Augmented assignment operators modify the variable in place. `a += 5` makes `a = 15`. `a *= 2` makes `a = 30`. So the output is `30`. PCEP often tests `+=`, `-=`, `*=`, `/=`, `//=`, `%=`, `**=`.
10What is the result of `bool(0) or bool('') or bool([])`?
A.True
B.False
C.None
D.Error
Explanation: `bool(0)` is False, `bool('')` (empty string) is False, `bool([])` (empty list) is False. `False or False or False` is False. In Python, the values `0`, `0.0`, `''`, `[]`, `{}`, `()`, `set()`, and `None` are all considered falsy.

About the PCEP Exam

The OpenEDG PCEP-30-02 (Certified Entry-Level Python Programmer) exam validates foundational knowledge of Python 3 programming, including syntax and semantics, basic data types and operators, control flow (if/elif/else, while, for), data collections (lists, tuples, dictionaries, sets), functions and recursion, exception handling, and the Python module system.

Questions

30 scored questions

Time Limit

40 min

Passing Score

70%

Exam Fee

$59 (OpenEDG / OpenEDG Testing Service)

PCEP Exam Content Outline

~17%

Computer Programming and Python Fundamentals

Python interpreter, compilation vs interpretation, literals (int, float, complex, str, bool, None), variables and naming rules, comments, arithmetic operators (+ - * / // % **), bitwise operators, operator precedence, type casting, input()/print() and sep/end arguments

~20%

Control Flow — Conditional Blocks and Loops

if / elif / else statements, while and for loops, range(), break, continue, the loop else clause, nested loops, comparison operators, logical operators (and, or, not), boolean expressions

~20%

Data Collections — Tuples, Dictionaries, Lists, and Strings

List operations (append, extend, insert, remove, pop, sort, reverse, slicing, len), list comprehension basics, tuples (immutable), dictionaries (keys, values, items, get), sets, strings (immutability, indexing, slicing, f-strings, format(), basic methods)

~23%

Functions and Exceptions

Function definition with def, parameters and arguments (positional, keyword, default), return values, scope rules (LEGB, global, nonlocal), recursion, try / except / else / finally, raise, common built-in exceptions (ZeroDivisionError, ValueError, TypeError, IndexError, KeyError, NameError)

~20%

Python Module System

import, from, as syntax, module aliasing, dir(), help(), basic standard library modules, package vs module concept introduction

How to Pass the PCEP Exam

What You Need to Know

  • Passing score: 70%
  • Exam length: 30 questions
  • Time limit: 40 min
  • Exam fee: $59

Keys to Passing

  • Complete 500+ practice questions
  • Score 80%+ consistently before scheduling
  • Focus on highest-weighted sections
  • Use our AI tutor for tough concepts

PCEP Study Tips from Top Performers

1Hand-trace every code snippet — don't run it in an IDE first; the exam tests prediction skill
2Memorize operator precedence: ** > unary +/- > * / // % > + - > comparison > not > and > or
3Know the difference between / (true division, float) and // (floor division, int when both ints)
4List methods modify in place and return None (append, extend, insert, remove, pop, sort, reverse)
5Tuples are immutable — no append, no item assignment; but a tuple containing a list lets that list change
6Strings are immutable — methods like .upper() return a new string, they do not modify in place
7f-strings, str.format(), and % formatting are all valid; PCEP focuses on f-strings and concatenation
8Try/except matches the FIRST handler that fits — order specific exceptions before general ones
9Use the free Python Essentials 1 course on edube.org — it is the official PCEP prep material

Frequently Asked Questions

What is the PCEP-30-02 exam?

PCEP-30-02 is the OpenEDG Certified Entry-Level Python Programmer exam administered by the OpenEDG Python Institute. It validates foundational knowledge of Python 3 programming, including basic data types, operators, control flow, data collections, functions, exceptions, and the module system. PCEP is the entry point to the OpenEDG Python certification track.

How many questions are on the PCEP exam?

PCEP-30-02 has 30 questions delivered in 40 minutes. Item types include single-select, multiple-select, drag-and-drop, gap-fill, code insert, and code order. The passing score is a cumulative 70% across all exam blocks. Many questions are short Python 3 code snippets — you must predict output, identify errors, or complete a function.

Are there prerequisites for the PCEP exam?

No prerequisites are required. Anyone can take the PCEP-30-02 exam directly. It is designed for absolute beginners and self-taught learners who want to validate their Python fundamentals before pursuing PCAP, PCPP1, or industry-specific Python roles.

What is the largest domain on the PCEP exam?

Functions and Exceptions is the largest single domain at approximately 23% of the exam. You must understand def syntax, parameter passing (positional, keyword, default), return values, scope rules (LEGB), recursion, and try/except/else/finally exception handling for built-in exceptions like ZeroDivisionError, ValueError, TypeError, IndexError, and KeyError.

How should I prepare for the PCEP exam?

Plan for 30-60 hours of study over 4-8 weeks. Use the free Python Essentials 1 (PE1) course on Edube Interactive — it aligns directly with PCEP-30-02 objectives. Write and run small Python 3 programs by hand, predict their output, and complete 100+ practice code questions. Aim for 80%+ on practice tests before scheduling the real exam.

What jobs can I get with PCEP certification?

PCEP demonstrates entry-level Python proficiency and supports roles such as Junior Python Developer, QA/Test Automation Engineer trainee, Data Analyst trainee, IT Support with scripting, and entry-level DevOps. PCEP is most valuable as a stepping stone to PCAP (Associate) and PCPP1 (Professional) certifications, which carry significantly more weight with employers.