Course contents for Python programming – 5 Days

Schedule

Item

Topic

Day

 

Introduction and Setup

Day 01

 

Working with PyCharm

 

Python Basics

 

Data Structures

 

Python Functions and more…

Day 02

 

Working with built-in modules and packages

 

Modules and Packages

 

Handling Exceptions

 

File input/output

 

Regular Expressions

 

Object Oriented Programming

Day 03

 

Advanced Python Concepts

 

Python Lambda function

 

Python Decorators

 

Python Generators

 

Co-Routine in Python

 

Implement REST API using Python

Day 04

 

Working with Databases with Python

 

Serializing Data

 

Introduction to Blocking and Non-Blocking IO

Day 05

 

Network Programming

 

Python Threads

Contents

The course contents are designed such that approximately 30% or less of the time is spent in theoretical knowledge sharing and 70% or more time is spent in hands-on sessions. Participant are guided on the syntax usage and encouraged to explore and program different scenarios.

Example programs and use cases

The course starts with basic and generic programming examples for better understanding of the concepts and syntax. As we move on the advanced topics, the examples are more towards real-time project scenarios.

Day 01

Introduction and Setup

  1. Introduction to Python
  2. Install Python and Setup Environment
  3. Difference between Python2 and Python3
  4. Working with Python 3.x
  5. Syntax and creating scripts using IDLE

Working with PyCharm

  1. Introduction to PyCharm and Installation
  2. PyCharm settings and preferences
  3. Setup Virtual Environment
  4. Create New project
  5. Adding Packages
  6. Navigation
  7. Code quality, refactoring, debugging

Python Basics

  1. Introduction
  2. Data types, variables
  3. Working with Numbers
  4. Working with Strings, slice-dice
  5. Printing formats
  6. Defining functions
  7. Loops and conditional statements – if, for, while

Data Structures

  1. Lists, Tuples, Sets
  2. Dictionaries
  3. Using Comprehensions – list and dictionary
  4. Strings
  5. Dictionaries

Day 02

Python Functions and more…

  1. Using functions as input to other functions
  2. Exploring different features of functions
  3. Working with Lambda, map, filter functions

Working with built-in modules and packages

  1. Introduction python package structure
  2. Working with sys and os packages
  3. Working with date and time modules

Modules and Packages

  1. Creating modules
  2. Creating packages
  3. Using built-in definitions

Handling Exceptions

  1. Understanding python execution model
  2. When do exceptions happen
  3. Catching exceptions
  4. Try, except, else, finally blocks
  5. Using built-in exceptions
  6. Implementing custom exceptions

File input/output

  1. Working with files – open, read, write, close
  2. Using built-in packages to work with standard file formats
  3. Using csv, html, json, xml parser

Regular Expressions

  1. Principles of automation
  2. Using regular expressions – re-module
  3. Find, findall, search and other operations
  4. Manipulating data

Day 03

Object Oriented Programming

  1. Introduction to Object Oriented Python
  2. Working with Classes, Instances, Attributes and Methods
  3. Working with Inheritance
  4. Polymorphism
  5. Creating virtual functions
  6. Exception handling
  7. Develop custom exceptions

Advanced Python Concepts

  1. Advanced List Comprehensions
  2. Collections Module
  3. Mapping and Filtering
  4. Lambda Functions
  5. Advanced Sorting
  6. Unpacking Sequences in Function Calls
  7. Modules and Packages

Python Lambda function

  1. Python Lambda Functions: Introduction
  2. Where Are Lambda Functions Useful?
  3. Writing Lambda Functions
  4. Lambda with the Sort Method
  5. Map, Reduce and Filter functions
  6. Lambda functions with Map, Reduce and Filter
  7. Lambda functions with list/dictionary comprehensions

Python Decorators

  1. Python Decorators Introduction
  2. Function Decorators
  3. More on Function Decorators
  4. Class Decorators
  5. Meta Classes – Introduction
  6. Creating Meta Classes
  7. Python Threads

Python Generators

  1. Generator- Introduction
  2. Generators with Examples
  3. Python Generators Expressions
  4. Why Generators

Co-Routine in Python

  1. Co-Routine- Introduction
  2. Creating Co-Routine
  3. Pipe-lining in Co-Routine
  4. Closing a Co-Routine

Day 04

Serializing Data

  1. Working with XML
  2. XML modules in Python
  3. Getting started with ElementTree
  4. Parsing XML
  5. Updating an XML tree
  6. Creating a new document
  7. About JSON
  8. Reading JSON
  9. Writing JSON
  10. Reading/writing CSV files
  11. YAML, other formats

Implement REST API using Python

  1. Introduction to REST API framework
  2. Building an end point
  3. Creating view, config, routes, models and templates
  4. Implementing the API
  5. Adding validators to datastore
  6. Show data to users
  7. Working with pagination
  8. Loading multiple endpoints
  9. Representing relations
  10. Protecting API – authentication and authorization

Working with Databases with Python

  1. Connecting to database from Python
  2. Defining schema, Creating tables
  3. Insert records to database
  4. Select data and options
  5. Format results
  6. Other DB operations
  7. The DB API
  8. Available Interfaces
  9. Connecting to a server
  10. Creating and executing a cursor
  11. Fetching data
  12. Parameterized statements
  13. Using Metadata
  14. Transaction control
  15. Creating a Table and Inserting Data into it
  16. Use Insert, Update, Delete, Alter and Select DB calls

Day 05

Introduction to Blocking and Non-Blocking IO

  1. Synchronous and asynchronous IO
  2. Introduction to event loops for network events
  3. Using various built-in modules for IO

Network Programming

  1. The Socket Module
  2. Network Clients
  3. Creating Network Servers
  4. Python Protocol Clients
  5. Generating & Sending Email
  6. The email Module
  7. Creating Simple Emails
  8. Creating a Message
  9. Creating SMTP Connections
  10. Running Shell Commands
  11. Popen Objects
  12. Using Parallel Processing
  13. Using Python’s os.fork() Function
  14. Using os.exec*() Variants

Python Threads

  1. The threading module
  2. Ways of Creating Threads in Python
  3. Using Functions to create Thread
  4. Targeting Multiple Thread
  5. Creating Thread by extending the Thread Class
  6. Creating Thread without extending the Thread Class
  7. Multi-Threading
  8. Sleep Method
  9. Producer Consumer Problem
  10. Synchronization with Locks
  11. Semaphores
  12. Sharing variables
  13. The queue module
  14. Creating pools
  15. Using multiprocessing
  16. Exchanging Objects
  17. Using Pipes
  18. Synchronization
  19. Using multiprocess Managers
  20. Using the Queue Object
  21. Using Semaphores
  22. Using Locks, RLocks, Condition & Semaphores
  23. Event Objects
  24. Timer Objects
  25. Processing Exit Codes

Contact 

info@valuableconsulting.com

Services Center

91springboard, 3rd Floor, #175 & #176, Dollars Colony, Phase 4, JP Nagar, Bannerghatta Main Road, Bengaluru, Karnataka 560076

Technology Center

97# Ph2 Grnd Floor Classic Orchards
Bannerghatta road, Bangalore - 560076

+91 8088427960

error: Content is protected !!