Python Essentials

Get Course Information

Connect for information with us at info@velocityknowledge.com

How would you like to learn?*

Python Essentials (5 days instructor-led) provides a vital tour of the most critical features of Python. Starting with setup and installation, you will soon dive into exploring built-in-library types, Python’s rich collection of operators and built-in functions, variables, assignment and scoping rules.

From this foundation, you will explore functions, a crucial aspect of any programming language, including considerable sophistication in defining parameters to a function and providing argument values. Explore advanced functional programming using generator expressions, comprehensions, and generator functions. Handle file input and output using web services and context managers, exception handling and explore wider, popular frameworks.

Through this concise and practical course, you will explore all you need to know to leverage this powerful, and industry-standard, programming language.

Prerequisites:

  • Experience with at least one other database system

Course Objectives:

  • Learn the essentials of Python programming to get you up and coding effectively
  • Get up-to-speed with the most important built-in data structures in Python, using sequences, sets, and mappings
  • Explore typical use cases for various features in Python
  • Use Python interactively and master the art of writing efficient Python scripts
  • Learn techniques for working with string data, including how to use regular expressions to parse strings
  • Get to know how the short-circuit and if-else logic operators work
  • Explore mutable data structures including list, set, and dict
  • Define functions with positional and optional parameters, and learn to use keyword argument values when calling a function
  • Write generator functions, generator expressions, and comprehensions
  • Master the use of exceptions for handling errors and other unexpected conditions
  • Understand the importance of working with files, context manager, and the with statement

Course Topics:

  1. Getting Started
  • Installation or upgrade
  • Using the Read-Evaluate-Print Loop (REPL)
  • Interacting with the help subsystem
  • Creating simple script files
  • The Python ecosystem
  • Looking at other Python interpreters
  1. Simple Data Types
  • Introducing the built-in operators
  • The numeric tower
  • The math libraries
  • Using bits and Boolean values
  • Working with sequences
  • Using string and bytes values
  • Using the tuple collection
  • The None object
  • The consequences of immutability
  • Using the built-in conversion functions
  1. Expressions and Output
  • Expressions, operators, and data types
  • The print() function
  • Examining syntax rules
  • Splitting, partitioning, and joining strings
  • Summary of the standard string libraries
  1. Variables, Assignment and Scoping Rules
  • Simple assignment and variables
  • Multiple assignment
  • Using the head, *tail assignment
  • Augmented assignment
  • The input() function
  • Python language concepts
  • The Python namespace concept
  1. Logic, Comparisons, and Conditions
  • Boolean data and the bool() function
  • Comparison operators
  • Logic operators and, or, not, if-else
  • The if-elif-else statement
  • The pass statement as a placeholder
  • The assert statement
  • The logic of the None object
  1. More Complex Data Types
  • The mutability and immutability distinction
  • Using the list collection
  • Using collection functions
  • Using the set collection
  • Mappings
  • Processing collections with the for statement
  • Iterating with the while statement
  • The continue and break statements
  • Using the else clause on a loop
  1. Basic Function Definitions
  • Looking at the five kinds of callables
  • Defining functions with positional parameters
  • Mutable and immutable argument values
  • Defining optional parameters via default values
  • Using the “everything else” notations of * and **
  • Nested function definitions
  • Working with namespaces
  • Defining lambdas
  • Writing additional function annotations
  1. More Advanced Functions
  • Using the for statement with iterable collections
  • Consequences and next steps
  • Using generator expressions and comprehensions
  • Defining generator functions with the yield statement
  • Using the higher-order functions
  • Using the built-in reductions max, min, and reduce
  • Three ways to sort a sequence
  • Functional programming design patterns
  1. Exceptions
  • The core exception concept
  • Using the try and except statements
  • Matching exception classes in an except clause
  • Creating our own exceptions
  • Using a finally clause
  • Use cases for exceptions
  • Issuing warnings instead of exceptions
  • Permission versus forgiveness a Pythonic approach
  1. Files, Databases, Networks, and Contexts
  • The essential file concept
  • Using a context manager via the with statement
  • Using the shelve module as a database
  • Web services and Internet protocols
  • Physical format considerations
  1. Class Definitions
  • Creating a class
  • Writing the suite of statements in a class
  • Using instance variables and methods
  • Pythonic object-oriented programming
  • Using properties
  • Using inheritance to simplify class definitions
  • Using class methods and attributes
  • Using __slots__ to save storage
  • The ABCs of abstract base classes
  1. Scripts, Modules, Packages, Libraries, and Applications
  • Script file rules
  • Running a script by the filename
  • Creating a reusable module
  • Creating a hybrid library/application module
  • Creating a package
  • Designing alternative implementations
  • Seeing the package search path
  1. Metaprogramming and Decorators
  • Simple metaprogramming with decorators
  • Defining our own decorator
  • More complex metaprogramming with metaclasses
  1. Fit and Finish – Unit Testing, Packaging, and Documentation
  • Writing docstrings
  • Writing unit tests with doctest
  • Using the unittest library for testing
  • Using other add-on test libraries
  • Logging events and conditions
  • Writing documentation with RST markup
  • Organizing Python code
  1. Next Steps
  • Leveraging the standard library
  • Leveraging PyPI the Python Package Index
  • Types of applications
  • Building CLI applications
  • Building GUI applications
  • Building web applications

Contact us to customize this course for your team and for your organization.

Search

Interested?
Python Essentials

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.