# PCEP | Certified Entry-Level Python Programmer Certification

## 1. Exam Block #1: Basic Concepts (17%)

1.1 Fundamental Concepts

- Interpreting and the interpreter

- Compilation and the compiler

- Language Elements

- Lexis

- Syntax and Semantics

- Python Keywords

- Instructions

- Indenting

1.2 Literals

- Boolean

- Integers

- Floating-point Numbers

- Scientific Notation

- Strings

1.4 The print() function

1.5 The input() function

1.6 Numeral Systems

- Binary

- Octal

- Decimal

1.7 Numeric Operators

1.8 String Operators

1.9 Assignment and Shortcut Operators

- PCEP: Basic Concepts MCQ

## 2. Exam block #2: Data Types, Evaluations, and Basic I/O Operations (20%)

2.1 operators: unary and binary, priorities and binding

2.2 Bitwise operators: ~ & ^ | << >>

2.3 Boolean operators: not and or

2.4 Boolean expressions

2.5 Relational operators ( == != > >= < <= ), Building complex Boolean expressions

2.6 Accuracy of floating-point numbers

2.7 Basic input and output operations using the input(), print(), int(), float(), str(), len() functions

2.8 formatting print() output with end= and sep= arguments

2.9 Type casting

2.10 Basic calculations

2.11 simple strings: constructing, assigning, indexing, slicing comparing, immutability

- PCEP: Data Types, Evaluations, and Basic I/O Operations MCQ

## 3. Exam block #3: Flow Control – loops and conditional blocks (20%)

3.1 conditional statements

- if

- if-else

- if-elif

- if-elif-else

3.2 multiple conditional statements

3.3 the pass instruction

3.4 Building loops

- while

- for

- range()

- in

3.5 Iterating through sequences

3.6 Expanding loops

- while-else

- for-else

3.7 Nesting loops and conditional statements

3.8 Controlling loop execution: break, continue

- Flow Control – loops and conditional blocks

### 4. Exam block #4: Data Collections – Lists, Tuples, and Dictionaries (23%)

4.1 Simple Lists

- constructing vectors

- indexing and slicing

- the len() function

4.2 Lists in detail

- indexing

- slicing

- basic methods (append(), insert(), index())

- functions (len(), sorted(), etc.)

- del instruction

- iterating lists with the for loop

- initializing

- in and not in operators

- list comprehension

- copying and cloning

4.3 Lists in Lists

- matrices and cubes

4.4 Tuples

- indexing

- slicing

- building

- immutability

4.5 Tuples vs. Lists

- similarities and differences

- lists inside tuples

- tuples inside lists

4.6 Dictionaries

- building

- indexing

- Iterating through dictionaries as well as their keys and values

- Checking key existence, keys(), items() and values() methods

4.7 Strings in detail

- ASCII, UNICODE, UTF-8

- Immutability

- Escaping using the \ character

- Quotes and apostrophes inside strings

- Multiline strings

- Copying vs. cloning

- String vs. String, String vs. Non-string

- Basic string methods (upper(), lower(), isxxx(), capitalize(), split(), join(), etc.)

- functions (len(), chr(), ord()), escape characters

## 5. Exam block #5: Functions (20%)

5.1 Defining and invoking your own functions and generators

5.2 Return and yield keywords, returning results,

5.3 The None keyword

5.4 . Recursion

5.5 Parameters vs. Arguments

5.6 Positional keyword and mixed argument passing

5.7 Default parameter values

5.8 Converting generator objects into lists using the list() function

5.9 name scopes, name hiding (shadowing), the global keyword