Python Course Poster

Learn Python Programming

  • Description
  • Course Content
  • What you'll learn?

Whether you are a well versed programmer or just a beginner who doesn't have any programming experience, Python should be your first programming language of choice. The reason is it is a high-level language unlike C/C++ which means it is easy to learn, write or understand as it is akin to any normal language like English. Python is a dynamically typed and interpreted language which means the code made in Python is simple, less size, easier to read as it is free from clutter & boiler plate code used in other high level languages like Java. Python can also be used to make scripts and automate your stuff. Infact many operating systems like Linux, Mac supply Python as a standard component. Python is growing really fast and big time and it makes a lot of sense to invest your time in learning a growing programming language if you are just starting your programming career. This not only helps you to get a job quickly but also will also accelerate your career growth.

Created in 1991, Python is older than Java but lately gained popularity and wide spread usage due to its simple structure and ability to learn easily even though you don't have any prior programming experience. Python's large standard library is one of its greatest strengths as it provides tools suited to many tasks. For Internet-facing applications, many standard formats and protocols such as MIME and HTTP are supported. It includes modules for creating graphical user interfaces, connecting to relational databases, generating pseudorandom numbers, arithmetic with arbitrary-precision decimals, manipulating regular expressions, web scraping, test processing and unit testing. You can use Python to make web apps with the help of frameworks like Django, Flask etc. There are many job roles like software engineer, web developer, data engineer, automation engineer, data scientist, data analyst that require proficiency in Python.

Learning Python opens up plethora of options for data science fields like Artificial Intelligence (AI), Neural Networks (NN), Machine Learning (ML), Data Analysis, Data Processing, Data Visualization etc as it contains numerous libraries and frameworks built dedicated for these purposes. Python has powerful improvements related to asynchronous operations i.e., websites made of Python can handle thousands of requests each second. This is the reason why popular websites you use everyday like Google, Facebook, YouTube and Quora use Python. The streaming service Netflix heavily relies on Python for security automation and training its machine learning models used for making its recommendation algorithms. Instagram, a photo sharing service with 400 million daily active users sharing more than 95 million photos and videos recently shifted its framework to Python. Spotify, the world's most popular music streaming service with 320 million users is 80% made of Python. These services use Python for various purposes like image processing, data analysis, machine learning, big data, speed, scalability etc.

CORE PYTHON

1) Introduction to Python
  • Features of Python
  • The Python Virtual Machine (PVM)
2) Basic Syntax of Python
  • Python Identifiers
  • Reserved Words
  • Multi-Line Statements
  • Quotation in Python
  • Comments in Python
  • Waiting for the User
  • Multiple Statements on a Single Line
  • Multiple Statement Groups as Suites
3) Variables and Data Types
  • Assigning Values to Variables
  • Multiple Assignment
  • Standard Data Types
  • Python Numbers
  • bool Datatype
  • Sequences in Python
    1. str
    2. bytes
    3. bytearray
    4. list
    5. tuple
    6. range
  • Python Dictionary
  • Data Type Conversion
4) Basic Operators
  • Types of Operators
    1. Arithmetic Operators
    2. Comparison (Relational) Operators
    3. Assignment Operators
    4. Logical Operators
    5. Membership Operators
    6. Identity Operators
  • Arithmetic Operators
    1. Addition Operator
    2. Subtraction Operator
    3. Multiplication Operator
    4. Division Operator
    5. Modulus Operator
    6. Exponent Operator
    7. Floor Division Operator
  • Comparison (Relational) Operators
    1. equal to
    2. not equal to
    3. greater than
    4. less than
    5. greater than or equal to
    6. less than or equal to
  • Assignment Operators
    1. Assigns
    2. Add AND
    3. Subtract AND
    4. Multiply AND
  • Logical Operators
    1. Logical AND
    2. Logical OR
    3. Logical NOT
  • Membership Operators
    1. in
    2. not in
  • Identity Operator
    1. is
    2. is not
5) Decision Making
  • if
  • if-else
  • elif
  • Nested IF
  • Single Statement Suites
6) Loops
  • while loop
  • Using else Statement with Loops
  • The Infinite Loop
  • Single Statement Suites
  • for loop
  • The range() function
  • Repeatedly by Sequence Index
  • Nested loops
  • Loop Control Statements
    1. continue statement
    2. break statement
7) Functions
  • Defining a functions
  • Calling a function
  • Calling a function with parameters
  • Keyword Arguments
  • Default Argument Values
  • How to use *args and **kwargs(Keyword Arguments) in Python
  • Using *args and **kwargs when calling a function
  • Returning a Value
  • Named parameters
  • Anonymous Functions or Lambdas
  • Using Lambdas with filter, map and reduce functions
  • Using main() as a function
8) Modules
  • The import statement
  • Creating Module and importing it in different ways
  • Importing Modules
  • Import module by renaming
  • Import module by assign it into a local name
  • Importing names from a module directly into the program
  • Import all names(defintions) from a module
  • Python Module Search Path
  • The dir() function
  • The reload() function
9) Strings
  • Creating a String
  • Escape Characters
  • Accessing Values in Strings
  • Accepting String values at runtime
  • Updating Strings
  • Comparing Strings
  • String Special Operators
  • String Formatting Operators
  • Built-in String Methods
  • Searching element in a String
10) Lists
  • Defining a List
  • Creating List using range() function
  • Access, Update, Delete elements in a list
  • Nested List
  • Negative indexing
  • Basic List Operations
  • Built-in List Functions & Methods
  • Aliasing and Cloning Lists
  • Finding Common Elements in Two Lists
11) Tuples
  • Defining a Tuple
  • Access, Update, Delete values in Tuples
  • Basic Tuple Operations
  • Built-in Tuple Functions
12) Dictionary
  • Defining a Dictionary
  • Access, Update, Delete values in Dictionaries
  • Properties of Dictionary Keys
  • Built-in Dictionary Functions & Methods
13) Python Numbers
  • Mathematical Functions
  • Random Number Functions
14) Python Sets
  • Create, Modify, Remove elements from a Set
  • Set Operations
15) Arrays
  • Creating an Array
  • Array Module
  • Creating an array from another array
  • Indexing and Slicing on Arrays
  • Array Methods
  • Working with Arrays using numpy
    1. Creating arrays using different numpy methods
    2. Viewing and Copying Arrays
    3. Dimensions of Arrays
16) Date & Time
  • Using Time Module
  • Getting current time
  • Getting formatted time
  • Getting calendar for a month
  • Time module methods
17) Exceptions
  • Exception Definition
  • List of Python Exceptions
  • Handling an Exception
    1. The except clause with no Python exceptions
    2. The except clause with multiple exceptions
    3. The try-finally clause
  • Argument of an Exception
  • Raising a Python exception
  • User-Defined Exceptions

ADVANCED PYTHON

18) Files I/O
  • Types of Files in Python
  • Text Files
  • Binary Files
  • Open, Close, Read, Write a file
  • Appending text in a file
  • Working with Text Files Containing String
  • Another way to read a file is to call a certain number of characters
  • Knowing Whether a File Exists or Not
  • Working with Binary Files
  • The with Statement
  • Pickle and Unpickle in Python
  • The seek() and tell() Methods
  • Random Accessing of Binary Files
  • Converting String literal to Binary format
  • Search for a particular record in the binary file.
  • Zipping and Unzipping Files
  • File flush() Method
  • File next() Method
  • Working with Directories
19) Classes and Objects
  • Creating a Class
  • The self variable
  • Constructor
  • Types of Variables
    1. Instance Variable
    2. Class/Static Variable
  • Types of Methods
    1. Instance Methods
    2. Class Methods
    3. Static Methods
  • Passing Members of One Class to Another Class
  • Inner Classes
20) Inheritance and Polymorphism
  • Python Inheritance Syntax
  • Checking if a class is subclass of another class
  • Overriding Super Class Constructors and Methods
  • The super() Method
  • Types of Inheritance
    1. Single Inheritance
    2. Multiple Inheritance
  • Problems in Multiple Inheritance
  • Method Resolution Order (MRO)
  • Polymorphism
    1. with inbuilt polymorphic functions
    2. with user defined polymorphic functions
    3. with class methods
  • Method Overloading
  • Method Overriding
  • Operator Overloading
  • Overloading binary + operator
  • Overloading different types of operators
  • Magic Methods
21) Abstract classes and Interfaces
  • Abstract Method and Abstract Class
  • Interfaces in Python
22) Regular Expressions in Python
  • What are Regular Expressions
  • Regular Expression Methods
    1. search()
    2. findall()
    3. match()
    4. split()
    5. sub()
  • Sequence Characters in Regular Expressions
  • Quantifiers in Regular Expressions
  • Special Characters in Regular Expressions
  • Using Regular Expressions on Files
  • Retrieving Information from a HTML File
23) Data Structures in Python
  • Linked Lists
  • Stacks
  • Queues
  • Deques
24) Threads
  • Single Tasking vs Multi Tasking
  • Uses of Threads
  • Creating Threads
    1. without using a class
    2. by creating a sub class to Thread class
    3. without creating a sub class to Thread class
  • Thread Class Methods
  • Single tasking using a Thread
  • Multitasking using Multiple Threads
  • Thread Synchronization
    1. Using Locks
    2. Using Sempahores
  • Deadlock of Threads
  • Avoiding Deadlocks
  • Communication between Threads
    1. using notify() and wait() methods
    2. using a Queue
  • Daemon Threads
25) Graphical User Interface
  • GUI in Python
  • The Root window
  • Fonts and Colors
  • Working with Containers
    1. Canvas
    2. Frame
  • Layout Managers
    1. Pack Layout Manager
    2. Grid Layout Manager
    3. Place Layout Manager
  • Widgets
    1. Button
    2. Label
    3. Message
    4. Text
    5. Scrollbar
    6. Checkbutton
    7. Radiobutton
    8. Entry
    9. Spinbox
    10. Listbox
    11. Menu
26) Networking in Python
  • Network
  • Sockets
  • Knowing IP address
  • Uniform Resource Locator (URL)
  • Reading the Source Code of a Web Page
  • Downloading a Web Page from Internet
  • Downloading an Image from Internet
  • TCP/IP Server
  • User Datagram Protocol (UDP)
  • UDP Server
  • UDP Client
  • File Server
  • File Client
  • Sending a simple mail
27) Database Connectivity
  • DBMS and its advantages
  • Installing MySQL Database
  • Setting the Path to MySQL Server
  • Working with MySQL Database
  • Using MySQL from Python
    1. Retrieving All Rows from a Table
    2. Inserting Rows into a Table
    3. Deleting Rows from a Table
    4. Updating Rows in a Table
  • Creating Database Tables through Python
  • Creating a GUI to retrieve a row from a MySQL Database

After completing this course you'll learn

  • How to write a Python program to solve complex problems
  • Basics of Python programming language
  • Perform different arithmetic, comparison and logical operations in Python
  • How to apply control statements to make decisions
  • How to use loops for repeated execution of statements
  • Create functions to organize your code
  • Use several inbuilt or create your own modules
  • Perform different operations on strings
  • How to use different sequences like Lists, Sets, Tuples, Arrays and Dictionaries in Python
  • Perform different mathematical functions and pick a random number in a give range/set
  • Working with multi dimensional arrays using NumPy module
  • Finding current day, date, calendar, time using Time module
  • How to handle exceptions during a program and create custom exceptions
  • Handle different file operations like creating, read/write, delete, modify, update any file using Python
  • Create classes, objects and methods
  • Apply OOPS concepts like inheritance, polymorphism, abstract classes, interfaces etc
  • Use different magic methods to overload default operators
  • Use regular expressions to find matching data, search, split or select sub string from a given set of data
  • Using different data structures like Linked Lists, Stacks & Queues in Python
  • Increase your program efficiency by dividing it into multiple threads
  • Using the default Thread class methods, synchronizing threads and avoiding deadlocks
  • Communication between Threads by various methods
  • Create Graphical User Interface (GUI) using Tkinter module
  • Using different GUI components like containers, layouts, widgets (button, text, scrollbar, menu etc), fonts and colors etc
  • How to network in Python
  • Dowloading source code, content, images from a webpage
  • Establishing connection beteen UDP/File server and clients and sending e-mail
  • Connecting external databases like MySQL through Python
  • Create, Retrieve, Insert, Delete and Update data into database tables through Python code
  • Creating a GUI to do the above operations much more easily