PCAP Exam
=========
.. contents::
:local:
Syllabus
--------
(Taken from `here
`__)
Exam block #1: Modules and Packages (12%)
.........................................
Objectives covered by the block (6 items)
* import variants; advanced qualifiying for nested modules
Comment: ``os.path``
* dir(); sys.path variable
* math: ceil(), floor(), trunc(), factorial(), hypot(), sqrt(); random: random(), seed(), choice(), sample()
* platform: platform(), machine(), processor(), system(), version(), python_implementation(), python_version_tuple()
* idea, __pycache__, __name__, public variables, __init__.py
* searching for modules/packages; nested packages vs directory tree
Exam block #2: Exceptions (14%)
...............................
Objectives covered by the block (5 items)
* except, except:-except; except:-else:, except (e1,e2)
* the hierarchy of exceptions
* raise, raise ex, assert
* event classes, except E as e, arg property
* self-defined exceptions, defining and using
Exam block #3: Strings (18%)
............................
Objectives covered by the block (8 items)
* ASCII, UNICODE, UTF-8, codepoints, escape sequences
* ord(), chr(), literals
* indexing, slicing, immutability
* iterating through,
* concatenating, multiplying, comparing (against strings and numbers)
* in, not in
* .isxxx(), .join(), .split()
* .sort(), sorted(), .index(), .find(), .rfind()
Exam block #4: Object-Oriented Programming (34%)
................................................
Objectives covered by the block (12 items)
* ideas: class, object, property, method, encapsulation, inheritance, grammar vs class, superclass, subclass
* instance vs class variables: declaring, initializing
* __dict__ property (objects vs classes)
* private components (instance vs classes), name mangling
* methods: declaring, using, self parameter
* instrospection: hasattr() (objects vs classes), __name__, __module__, __bases__ properties
* inheritance: single, multiple, isinstance(), overriding, not is and is operators
* constructors: declaring and invoking
* polymorphism
* __name__, __module__, __bases__ properties, __str__() method
* multiple inheritance, diamonds
Exam block #5: Miscellaneous (List Comprehensions, Lambdas, Closures, and I/O Operations) (22%)
...............................................................................................
Objectives covered by the block (9 items)
* list comprehension: if operator, using list comprehensions
* lambdas: defining and using lambdas, self-defined functions taking lambda as as arguments; map(), filter();
* closures: meaning, defining, and using closures
* I/O Operations: I/O modes, predefined streams, handles; text/binary modes
* open(), errno and its values; close()
* .read(), .write(), .readline(); readlines() (along with bytearray())
Sample Questions
----------------
* `Python Certification Exam PCAP-31-03 - Practice Tests - 2022
`__
* https://www.examtopics.com/exams/python-institute/pcap/