
Explore Python know-how through detailed Q&A designed to prepare you for a professional Python software developer career. Questions are organized into color-coded beginner, intermediate, and advanced subsets for easy review.
Clarify the difference between a class and an instance using a cookie recipe analogy. Explain initialization via the constructor and self in creating concrete instances from a class blueprint.
Explore list, set, and dictionary comprehensions in Python, compare memory and time tradeoffs, and practice building readable inline expressions like primes via slicing examples.
Learn how Python handles exceptions with try, except, finally, raise, and else, including how else exits the try block and why finally completes the exception management flow.
Explore the global interpreter lock in CPython, explain its purpose for thread safety, and discuss how file IO unlocks the GIL to enable concurrent data processing and library performance.
Explore how __init__.py acts as the module initialization file in Python 3, enabling directories to be treated as modules by interpreter, and how __init__ initializes class instances with overloadable parameters.
Learn what a lambda expression is in Python, how to define and use anonymous one-line functions with implicit return, assign them to variables, and apply them in larger expressions.
Explains the difference between the operating system path and the Python path in environment variables, how to query them on POSIX and Windows, and how to modify the Python path.
Explain python's range and enumerate, detailing zero-based range with start, stop, and step, and how enumerate pairs indices with items in a collection.
There are severals ways to return several values form a function. What is the easiest?
Which "built in" function can be used to combine the content of Python's iterable types?
The concepts reviewed in this introductory set of questions (Lessons #K0011 - K0022) covers more "beginner," as well as "intermediate" Python programmer concepts. No "advanced" questions are included.
This educational opportunity has been updated to include several "must know" bonus questions.
Training Review
Also available on Udemy, students should note that all concepts presented in this first set of Python Review Questions have been hand-selected by the author from his Python Primer (Python 1000,) as well as his Beyond the Basics (Python 2000) on-line training opportunities.
PyQuesting
Fellow Python enthusiasts should note that this set of Python review questions also serves as an introduction to the author's official Know How question & answer series. Unlike this set first of lessons, the questions and answers included in the author's "Know How" series include concepts found throughout the author's Python 3000 training opportunities, as well as a related set of information from the authors blog, and his Tactical Python Projects video presentations.
Python By Design
Students interested in learning how to prepare for "white board" design sessions - yet another popular interview challenge - should consider reading "Python by Design." An Open Source project on GitHub, the source code for the GitHub project is also part of the "Python by Design" book, and is now available on Amazon.
About This Series
Written by a Principal Trainer & Principal Software Development Engineer, in order to insure mastery key topics are presented several times, as well as at ever-increasing depth. Students will also be using professional programming interfaces - the same tools that software developers use - to create their software.
From keywords & tabs, to testing & documentation, hints & tips on how to use Python in the professional world abound!
After completing the Python 1000 series, in the Python 2000 series students will complete keyword mastery by exploring a large collection of activity-related topics. Sold separately, in the 2000 series students will enjoy learning how to create Lambdas, Generators, Context Managers, Packages & Modules, Classes, Factories, Frameworks, how to manage Exceptions, as well as other professional programming topics.
The questions and answers included in this series also includes concepts found throughout the author's Python 3000 training opportunities, as well as a related set of information from the authors blog, and his Tactical Python Project video presentations.