The PCEP – Certified Entry-Level Python Programmer certification (Exam PCEP-30-02) is a professional acknowledgment of a candidate's capability to handle coding tasks related to the basics of programming in Python. Test takers should display adequate knowledge of general programming concepts, Python language syntax and rules, and the ability to tackle common implementation problems using the Python Standard Library. Achieving PCEP™ certification confirms that the individual is acquainted with fundamental concepts including:
Section 1: Understand Computer Programming and Python Fundamentals (18%)
1.1 – Understanding fundamental terms and definitions
- interpreting and the interpreter, compilation and the compiler
- lexis, syntax, and semantics
1.2 – Understanding Python’s logic and structure
- keywords
- instructions
- indentation
- comments
1.3 – Introducing 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
1.4 – Choosing 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
1.5 – Performing Input/Output console operations
- the print() and input() functions
- the sep= and end= keyword parameters
- the int() and float() functions
Section 2: Understand about Control Flow – Conditional Blocks and Loops (29%)
2.1 – Making 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
2.2 – Performing 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
Section 3: Learn about Data Collections – Tuples, Dictionaries, Lists, and Strings (25%)
3.1 – Collecting and processing 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
3.2 – Collecting and processing data using tuples
- tuples: indexing, slicing, building, immutability
- tuples vs. lists: similarities and differences
- lists inside tuples and tuples inside lists
3.3 Collecting and processing 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()
3.4 Operating with strings
- constructing strings
- indexing, slicing, immutability
- escaping using the \ character
- quotes and apostrophes inside strings
- multi-line strings
- basic string functions and methods
Section 4: Understand Functions and Exceptions (28%)
4.1 – Decomposing the code using functions
- defining and invoking user-defined functions and generators
- the return keyword, returning results
- the None keyword
- recursion
4.2 – Organizing 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
4.3 – Python Built-In Exceptions Hierarchy
- BaseException
- Exception
- SystemExit
- KeyboardInterrupt
- abstract exceptions
- ArithmeticError
- LookupError
- IndexError
- KeyError
- TypeError
- ValueError
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