Pythonic Practice | Skillsoft Global Knowledge Skip to main Content

Enterprise Python

  • Course Code GK821513
  • Duration 4 days

Public Classroom Price

eur1.995,00

excl. VAT

Request Group Training Add to Cart

Course Delivery

This course is available in the following formats:

  • Company Event

    Event at company

  • Public Classroom

    Traditional Classroom Learning

  • Virtual Learning

    Learning that is virtual

Request this course in a different delivery format.

Course Overview

Top

Exclusive - Explore advanced Python topics and skills with a particular focus on utilization of Python for enterprise development.

This comprehensive course explores advanced Python topics and skills with a particular focus on utilization of Python for enterprise development. You’ll learn how to leverage OS services, code graphical application interfaces, interact with network series, query databases, and process XML and other data types. As part of a deep dive into the programming language, you’ll gain an understanding of some of Python's lesser known but incredibly powerful functions such as meta-programming, decorators, context managers, generators, iterators, and descriptors. At the end of the course, you will be able to use Python to complete advanced tasks and write secure and scalable enterprise-grade code.

Course Schedule

Top

Target Audience

Top

IS THIS THE RIGHT COURSE?

Students should have experience writing Python scripts, as well as a user-level knowledge of Unix/Linux, Mac, or Windows.

WHO SHOULD ATTEND?

This in an intermediate and beyond level course designed for students who have experience writing Python scripts and who want to master design and architecture best practices and write enterprise-grade code.

Course Objectives

Top
  • Common practices for writing scalable and legible Python code
  • Effective data processing practices and features like generators and decorators to improve complex computations on large datasets
  • Pythonic design patterns for secure, large-scale applications.
  • Enhancements to classes
  • Advanced Python metaprogramming concepts
  • Leveraging OS services
  • Interacting with network services
  • Coding graphical interfaces for applications
  • Designing professional scripts
  • Querying databases
  • Processing XML, CSV, and JSON data

Course Content

Top

Day 1: Pythonic Python

1- Pythonic Programming

  • The Zen of Python
  • Comments, docstrings, annotations
  • String Handling
  • List and Array optimization
  • Tuple tricks
  • Control structures in Python – effective use of Lambda functions, List comprehensions
  • Creating efficient dictionaries
  • Advanced unpacking
  • Essential conventions for Pythonic classes
  • Clean Python code patterns
  • Code quality enforcement tools – Style and Logic guides
  • Pythonic class conventions
  • Effective handling of import
  • Handling Decorators – Classes, Functions, accepting arguments, Multi decorators, singleton
  • Decorators and the DRY principle
  • Context Manager
  • Iterators
  • Generators for performance improvement
  • Coroutines – yield from, async def, await
  • Descriptors – types, chains, accessing attributes, benefits

Day 2: Python System Scripting

1- OS Services

  • The os and os.path modules
  • Environment variables
  • Launching external commands with subprocess
  • Walking directory trees
  • Paths, directories, and filenames
  • Working with file systems

2- Network Programming

  • Built-in classes
  • Using requests
  • Grabbing web pages
  • Sending email
  • Working with binary data
  • Remote access (SSH)
  • Using FTP

3- Scripting for System Administration

  • Running external programs
  • Parsing arguments
  • Creating filters to read text files
  • Logging

Day 3: Python Data Processing

1- Serializing data – XML and JSON

  • Working with XML
  • XML modules in Python
  • Getting started with ElementTree
  • Parsing XML
  • Updating an XML tree
  • Creating a new document
  • About JSON
  • Reading JSON
  • Writing JSON
  • Translating JSON to Pythonic data
  • Validating JSON data
  • Reading/writing CSV files
  • YAML, other formats as time permits
  • Time Permitting Sessions

2- Database access

  • The DB API
  • Available Interfaces
  • Connecting to a server
  • Creating and executing a cursor
  • Fetching data
  • Parameterized statements
  • Using Metadata
  • Transaction control
  • ORMs and NoSQL overview

Day 4: Beyond Python

1- Pythonic Architecture

  • Python Design Patterns
  • Architecture of Python applications
  • Event driven programming architecture
  • Microservices architecture
  • Scaling Python applications
  • Differentiate the features of event-based, microservice, and API architectures.
  • Application security guidelines

2- PyQt

  • Overview
  • Qt Architecture
  • Using designer
  • Standard widgets
  • Event handling
  • Creating a simple application

3- Type hinting

  • Annotate variables
  • Learn what type hinting does NOT do
  • Use the typing module for detailed type hints
  • Understand union and optional types
  • Write stub interfaces

4- Writing real-life applications

  • Reading input files in Unix
  • Parsing command-line options
  • Detecting the current platform
  • Implementing logging
  • Creating a calculator application in PyQt
  • Perform CRUD operations by connecting to DB

Course Prerequisites

Top

Students should have experience writing Python scripts, as well as a user-level knowledge of Unix/Linux, Mac, or Windows.

Further Information

Top

LABS OUTLINE

This very hands-on course includes more than 15 practical lab-based activities.

Cookie Control toggle icon