Python

python

PYTHON TRAINING CONTENT

CORE PYTHON

Setting up and running Python 

●Python Implementations – CPython, Iron Python, Jython, pypy 

●Distributions – python.org, anaconda python, pypy 

●Shells and IDEs – python, Ipython, Jupyter, Eclipse, Pycharm

●Python 2 vs 3 

●Hello World!’ 

●No braces only indentation 

●Interpretationand.pyc, .pyo files 

Memory Management

●Garbage collector

●regex 

Types and conversion functions 

●Int() 

●float () 

●bool() 

●str() 

●id () 

●type () 

●None 

●sys. getsizeof ()

Operators 

●arithmetic 

●relational 

●logical 

●assignment 

●bitwise 

●membership 

●identity operators

    Control Structures 

●Conditionals

a.If 

b.If-else

c.If-elif 

●Looping statements 

a.while 

b.for 

c.range ()andxrange () 

d.Break and Continue 

●Example Problems

Container Types 

●tuple 

●Strings 

●Array or List in Python 

●List slicing techniques 

●Collections

a.set () 

b.dict () 

c.Defaultdict() 

d.OrderedDict ()

e.Counter () 

f.heapq () 

g.deque () 

●Exercise Problems

Functions 

●Positional arguments 

●Variable Arguments 

●Keyword arguments

●Default Arguments 

●Call-by-object-reference (call-by-reference and call-by-value) 

●passkeyword 

●Built-in methods

Iterators and Generators 

●range () and xrange () re-visited 

●next ()vs.next () 

●yield and Custom Generators 

●custom iterators __iter__, __next__ 

●Generator expressions

Miscellaneous

●zip() 

●enumerate() 

●Unpacking in python 3 

●Copy(), deepcopy() 

Modules and Namespaces

●import statement 

●if __name__ == '__main__’ 

●python files 

●Package vs Folder

●__init__.pyand __all__

●locals ()and globals () 

File Handling 

●Files and directories 

●Text files 

●Binary files 

●Encoding – UTF-8 & ASCII 

●Byte order (big-endian, little-endian) 

●Text file processing 

●Pickling - Binary file handling

Advanced Python

Functional programming 

●Lambdas 

●map (), filter () and reduce ()

●List comprehension revisited

Object Orientation 

●Abstraction 

●Encapsulation 

a.Data binding

b.Data hiding

●Classes and POD 

a.Inheritance 

b.Re-Usability 

●MRO 

a.Single Inheritance 

b.Multiple Inheritance 

c.Multi-level Inheritance 

d.Hierarchical Inheritance

e.Hybrid Inheritance 

f.Diamond Problem 

●PolymorphismI: overloading 

a.Method overloading in python 

b.Operator overloading 

●Polymorphism II: Overriding 

●Static Methods 

●ClassMethods 

●Self & Cls 

●Decorators using functions 

a.local functions 

b.passing and returning functions

c.function decorators 

●Decorators using Classes 

●Context managers 

●Callable objects (functors) __call__ 

Descriptors and Properties 

●__get__, __set__, __del__ 

●@property decoration

●property function 

Exception handling 

●System Continuity 

●try –except

●finally 

●else 

●writing custom exceptions 

Useful modules 

●datetime

●time 

●pytz 

●sys 

●os 

●random 

Regular Expressions 

●match ()

●search () 

●findall() 

●Greedy and Non-Greedy Matching

Serialization 

●pickle module

●CSV and EXCEL – csv module

●XML parsing – lxml module 

●JSON Parsing –json and simplejson modules

●Universal conversion - odo module

Rest API using python, context manager

Multi-threading 

●Concurrency and Parallelism 

●Multi-processing 

●Multi-threading 

●Creating thread 

●Joining thread 

●Daemon threads

●Cancelling threads 

●Critical section and locking 

●Deadlock

●GIL 

●Asynchronous Programming 

Database connectivity 

●Connectors – MySQL, SQLite, Mongo

●dB&PostgreSQL 

●Querying and cursors 

●Cursor unpacking

 Logging 

●Logging setup

●Log Levels 

●Console Logger 

●File Logger 

●Rotating File Logger

Data analysis 

●Numpy Intro

a.Arrays, Datatypes 

b.Matrices 

c.Broadcasting

●Pandas Intro

a.series 

b.Data Frames 

c.Merge, Join, Concatenate 

d.Handling missing data 

e.IO Tools, Text, CSV, HDF5, JSON, EXCEL 

f.plotting

●Matplotlib 

a.Intro Line plot 

b.Bar charts 

c.Histograms 

d.Scatter Plot

Unit testing

●Writing unit tests 

●Assertions 

●nosetests 

●mocking 

●coverage

ORM Object relational mapping

●SQLAlchemy

a.Creating, dropping tables 

b.Updating records 

c.Querying

Networking 

●TCP/IP Basics 

●Socket programming 

●Simple TCP Client – Server 

●Simple UDP Client – Server

●Emailing 

●FTP


Flask Web framework   

●Flask Basics 

●Templates 

●Forms with Flask

●SQL Databases with Flask

●Large Flask Applications 

●Flask Migrate for Database Migrations

●Flask REST APIs

●Deployment 

●Payments with Stripe 

Django Web Framework 

●Django Basics 

●Django Templates 

●Django Forms

●Django Admin Customization

●ORM

●Class Based Views

●Flask Migrate for Database Migrations

●Django REST APIs

●Deployment 

●User Authentication

Python in Kafka 

Python in Cloud 

Python in Data visualization    

Python in Machine Learning 

WORKING WITH REAL TIME PROJECT (USE CASES)