PCEP – Certified Entry-Level Python Programmer Certification is a comprehensive mock exam with emphasis on using the PCEP 30-01 Syllabus as guide on the question topic. The audience should be at least a beginner Python programmer or have a good grasp on programming because this is not a tutorial. All questions are tested and have undergone quality control. All questions are based on individual topics and all topics have been covered. Some of the topics may not be thoroughly covered but each and every topic in the syllabus have a corresponding question with sufficient representation. Exam block #1: Basic Concepts Objectives covered by the block (9 exam items) fundamental concepts: interpreting and the interpreter, compilation and the compiler, language elements, lexis, syntax and semantics, Python keywords, instructions, indenting literals: Boolean, integer, floating-point numbers, scientific notation, strings comments the print() function the input() function numeral systems (binary, octal, decimal, hexadecimal) numeric operators: ** * / % // + – string operators: * + assignments and shortcut operators Exam block #2: Data Types, Evaluations, and Basic I/O Operations Objectives covered by the block (11 exam items) operators: unary and binary, priorities and binding bitwise operators: ~ & ^ | << >> Boolean operators: not and or Boolean expressions relational operators ( == != > >= < <= ), building complex Boolean expressions accuracy of floating-point numbers basic input and output operations using the input(), print(), int(), float(), str(), len() functions formatting print() output with end= and sep= arguments type casting basic calculations simple strings: constructing, assigning, indexing, immutability Exam block #3: Control Flow – loops and conditional blocks Objectives covered by the block (8 exam items) conditional statements: if, if-else, if-elif, if-elif-else multiple conditional statements the pass instruction building loops: while, for, range(), in iterating through sequences expanding loops: while-else, for-else nesting loops and conditional statements controlling loop execution: break, continue Exam block #4: Data Collections – Lists, Tuples, and Dictionaries Objectives covered by the block (7 exam items) simple lists: constructing vectors, indexing and slicing, the len() function lists in detail: indexing, slicing, basic methods (append(), insert(), index()) and functions (len(), sorted(), etc.), del instruction, iterating lists with the for loop, initializing, in and not in operators, list comprehension, copying and cloning lists in lists: matrices and cubes tuples: indexing, slicing, building, immutability tuples vs. lists: similarities and differences, lists inside tuples and tuples inside lists dictionaries: building, indexing, adding and removing keys, iterating through dictionaries as well as their keys and values, checking key existence, keys(), items() and values() methods strings in detail: escaping using the \ character, quotes and apostrophes inside strings, multi-line strings, basic string functions. Exam block #5: Functions Objectives covered by the block (9 exam items) defining and invoking your own functions and generators return and yield keywords, returning results, the None keyword, recursion parameters vs. arguments, positional keyword and mixed argument passing, default parameter values converting generator objects into lists using the list() function name scopes, name hiding (shadowing), the global keyword Questions in the Practice tests are much more difficult than what is included in the Certified Entry-Level Python Programmer Certification. I recommend doing hands-on to test the validity of the answers and emphasize on the importance of coding different permutations and combinations on the examples given. All questions are self-explanatory and it will be easier to understand if the code is run on IDLE or the user's preferred Python IDE.