PCAP | Certified Associate in Python Programming Certification
Exam Code : PCAP-31-02

Public Class

Live Virtual Class

Private Class

In-House Class

Key points about this course

Duration : 3 Days
Public Class : RM 4,500.00
Live Virtual Class : RM 3,600.00
HRDF Claimable
Course Overview

PCAP – Certified Associate in Python Programming certification is a professional credential that measures your ability to accomplish coding tasks related to the basics of programming in the Python language and the fundamental notions and techniques used in object-oriented programming.

PCAP – Certified Associate in Python Programming certification shows that the individual is familiar with general computer programming concepts like conditional execution, loops, Python programming language syntax, semantics, and the runtime environment, as well as with general coding techniques and object-oriented programming.

Becoming PCAP certified ensures that the individual is fully acquainted with all the primary means provided by Python 3 to enable her/him to start her/his own studies, and to open a path to the developer’s career.

Course Prerequisites

This course has no pre-requisites but having basic knowledge in programming is highly recommended.

Course Objectives

After finishing this course, test candidates should demonstrate the sufficient knowledge of the following concepts:

1. The fundamentals of computer programming, i.e. how the computer works, how the program is executed, how the programming language is defined and constructed, what the difference is between compilation and interpretation, what Python is, how it is positioned among other programming languages, and what distinguishes the different versions of Python;

2. The basic methods of formatting and outputting data offered by Python, together with the primary kinds of data and numerical operators, their mutual relations and bindings; the concept of variables and variable naming conventions; the assignment operator, the rules governing the building of expressions; the inputting and converting of data;

3. Boolean values to compare difference values and control the execution paths using the if and if-else instructions; the utilization of loops (while and for) and how to control their behavior using the break and continue instructions; the difference between logical and bitwise operations; the concept of lists and list processing, including the iteration provided by the for loop, and slicing; the idea of multi-dimensional arrays;

4. The defining and using of functions – their rationale, purpose, conventions, and traps; the concept of passing arguments in different ways and setting their default values, along with the mechanisms of returning the function’s results; name scope issues; new data aggregates: tuples and dictionaries, and their role in data processing;

5. Python modules: their rationale, function, how to import them in different ways, and present the content of some standard modules provided by Python; the way in which modules are coupled together to make packages; the concept of an exception and Python’s implementation of exceptions, including the try-except instruction, with its applications, and the raise instruction; strings and their specific methods, together with their similarities and differences compared to lists;

6. The fundamentals of OOP (Object Oriented Programming) and the way they are adopted in Python, showing the difference between OOP and the classical, procedural approach; the standard objective features: inheritance, abstraction, encapsulation, and polymorphism, along with Python-specific issues like instance vs. class variables, and Python’s implementation of inheritance; objective nature of exceptions; Python’s generators (the yield instruction) and closures (the lambda keyword); the means Python developers can use to process (create, read, and write) files.

Course Content

Module 1: Control and Evaluations

Objectives covered by the module

  • basic 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
  • operators: unary and binary, priorities and binding
  • numeric operators: ** * / % // + –
  • bitwise operators: ~ & ^ | << >>
  • string operators: * +
  • Boolean operators: not and or
  • relational operators ( == != > >= < <= ), building complex Boolean expressions
  • assignments and shortcut operators
  • accuracy of floating-point numbers
  • basic input and output: input(), print(), int(), float(), str() functions
  • formatting print() output with end= and sep= arguments
  • conditional statements: if, if-else, if-elif, if-elif-else
  • the pass instruction
  • simple lists: constructing vectors, indexing and slicing, the len() function
  • simple strings: constructing, assigning, indexing, slicing comparing, immutability
  • 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

Module 2: Data Aggregates

Objectives covered by the module

  • strings in detail: ASCII, UNICODE, UTF-8, immutability, escaping using the \ character, quotes and apostrophes inside strings, multiline strings, copying vs. cloning, advanced slicing, string vs. string, string vs. non-string, basic string methods (upper(), lower(), isxxx(), capitalize(), split(), join(), etc.) and functions (len(), chr(), ord()), escape characters
  • 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

Module 3: Functions and Modules

Objectives covered by the module

  • 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
  • lambda functions, defining and using
  • map(), filter(), reduce(), reversed(), sorted() functions and the sort() method
  • the if operator
  • import directives, qualifying entities with module names, initializing modules
  • writing and using modules, the __name__ variable
  • pyc file creation and usage
  • constructing and distributing packages, packages vs. directories, the role of the __init__.py file
  • hiding module entities
  • Python hashbangs, using multiline strings as module documentation

Module 4: Classes, Objects, and Exceptions

Objectives covered by the module

  • defining your own classes, superclasses, subclasses, inheritance, searching for missing class components, creating objects
  • class attributes: class variables and instance variables, defining, adding and removing attributes, explicit constructor invocation
  • class methods: defining and using, the self parameter meaning and usage
  • inheritance and overriding, finding class/object components
  • single inheritance vs. multiple inheritance
  • name mangling
  • invoking methods, passing and using the self argument/parameter
  • the __init__ method
  • the role of the __str__ method
  • introspection: __dict__, __name__, __module__, __bases__ properties, examining class/object structure
  • writing and using constructors
  • hasattr(), type(), issubclass(), isinstance(), super() functions
  • using predefined exceptions and defining your own ones
  • the try-except-else-finally block, the raise statement, the except-as variant
  • exceptions hierarchy, assigning more than one exception to one except branch
  • adding your own exceptions to an existing hierarchy
  • assertions
  • the anatomy of an exception object
  • input/output basics: opening files with the open() function, stream objects, binary vs. text files, newline character translation, reading and writing files, bytearray objects
  • read(), readinto(), readline(), write(), close() methods

× WhatsApp Us