
This video gives an overview of the entire course.
Getting started with developing Python on your local machine.
Explore benefits of using WinPython as a Python environment
Learn how to get and install the latest version of WinPython
Understand what are the different tools that come with Python
Getting a Python program to print hello world on screen.
Learn how to print text on screen
Learn how to create Python files that can be interpreted
Learn how to run Python files
Know the useful features of Python.
Define functions and inner functions
Create short functions using lambdas
Implement quick for loops with list comprehensions
In this video, using a package manager, we will retrieve and install new packages.
Learn what is pip and where does it get its packages from
Understand how to install or upgrade new packages with pip
Explore how to install whl files
Python applications have conventional structures that increase productivity. In this video let’s explore the same in depth.
Understand how to structure an application
Learn how to import external modules in a readable way
Explore how init.py works and how to import deep modules
This video is all about managing your application's dependencies with ease.
Explore what are virtual environments and pipenv
Install and use pipenv
Run Python programs under your pipenv
This video is all about using OOP correctly in Python. Everything is a class in Python.
Understand what does properties, self and __init__ mean
Explore Static methods, class methods, and inheritance
Let us find a better home for helpers with the aid of decorators in this video.
Understand Inner functions, functions returning functions
Define a simple decorator
Use cases of decorators
In this video we will learn how to Manage resources correctly with Context Managers.
Learn how to open and close dynamic resources correctly
Use context managers to manage resources
Explore useful applications of context managers
This video is all about how to scrape data from websites using Python.
Let us understand what is scrapy and how to install it
Let us see how to create a new scrapy project and how to write our first spider
Export the scraped data using command line
In this video, we will collect news articles from outlets using Python.
Understand what is newspaper and how we can install it
Extract a simple news article
Learn how to Perform NLP on the extracted article
In this video, we will scrape blogs and medium posts with feedparser.
Explore and understand what is feedparser and how we can install it
Access common channel and article elements of a newsfeed
Learn how to deal with missing elements in a newsfeed with the get function
Handling tabular data in Python with numpy and pandas.
Learn what are numpy and pandas
Learn about Arrays, array operations, and datatypes in numpy
Learn about DataFrames, viewing and selecting data with pandas
Use machine learning models to make your apps smarter.
Learn about scikit-learn
Initialize your first model with iris data
Train your first model and explore the results
Present your data science work effectively with matplotlib.
What is matplotlib and how to make a simple plot
Create more detailed plots with axis labels and legends
Include images into your plots
Static websites can be changed cheaply and delivered fast.
Generate a static site with Pelican
Write some content with Markdown
Change global variables
Reuse static content using a Python templating engine.
Learn What is jinja2 and create your first template
Learn about Template inheritance
Use filters to customize data
Quickly create web applications with Python and Flask.
Learn What is flask and create your first web app
Use debug mode in flask
Learn about routing and variable rules
This video gives an overview of the entire course.
Introduce divide and algorithm, explain various steps involved in a divide and conquer algorithm and walk through some of the common divide and conquer algorithms.
Explain Divide and Conquer
Steps of a Divide and Conquer
Some examples of Divide and Conquer algorithms
Introduce Greedy Algorithms., look at some examples of Greedy Algorithms and comparison between Greedy versus Divide and Conquer.
Introduce Greedy Algorithms
Examples of Greedy Algorithms
Greedy versus Divide and Conquer
Introduce Recursion, compare Iteration vs. Recursion and look at Binary Search using Recursion.
Introduce Recursion
Iteration versus Recursion
Binary Search using Recursion
Introduce Dynamic Programming, talk about properties of DP and Fibonacci using DP.
Introduce Dynamic Programming
Properties of DP
Fibonacci using DP
Introduce Asymptotic Analysis. And demo Asymptotic Notation and talk about why use Asymptotic Notation.
Introduce Asymptotic Analysis
Asymptotic Notation
Why
Introduce Python list, demo how to use list and List methods and operations.
Introduce Python list
How to use list
List methods/operation
Introduce tuples, compare Tuple vs List and demo how to use tuples.
What are tuples
Tuple versus List
How to use tuples
Introduce Dictionaries, walk through how to create Dictionaries and how to use Dictionaries in code.
Introduce Dictionaries
How to create Dictionaries
How to use Dictionaries
We will understand what a Set data-type is. What is the built-in type available for Set. Then we shall see a demo of implementing a Set using Python dictionaries.
Understand what a Set data-type is
What is the built-in type available for Set
Demo of Set using Python dictionaries
Learn whether there are pointers in python, we learn what is reference and what is the difference between pointer and reference and see some code examples.
Learn whether there are pointers in python, we learn what is reference
What is the difference between pointer and reference
See some code examples
Get introduced Stack, define an abstract stack data structure before implementing it and see some examples of stack in programming world.
Get introduced to a data structure called as the Stack
Define and implement an abstract stack data structure
See some examples of stack in programming world
Look into the structure of Stack implementation using Python and implement various operations of the stack and then see how to use the stack.
Code structure for stack
Implement stack
How to u
In this video, we will introduce you to another linear data structure called as Queue, we shall discuss the Queue as an abstract data type and then look at a simple implementation of the Queue Data Structure.
Introduce linear data structure called as Queue
Discuss the Queue as an abstract data type
Look at a simple implementation of the Queue Data Structure
In this video, we will introduce you to a hybrid linear data structure called as Deque. We shall discuss Deque as an abstract data type and then look at a simple implementation of Deque Data Structure.
Introduce hybrid linear data structure called as Deque
Discuss Deque as an abstract data type
Look at a simple implementation of Deque Data Structure
In this video, we will introduce you to what hash-table is. We will also present the Hash table as an abstract data type before proceeding to an implementation of a hash table.
Introduce what hash-table is
Present the Hash table as an abstract data type
Implement a hash table
Present the first non-linear data structure called as Tree. We shall understand what a tree is and its components are and then define the binary tree ADT.
Present the first non-linear data structure called as Tree
We shall understand what a tree is and its components are
Define the binary tree ADT
In this video, through a demo, we shall fill up the gaps we had in the last video in implementing an example Binary Tree using Python.
Implement insert_left() and insey_right() methods
Implement traversal methods
Run the program
We shall discuss about the heapq python module that provides an out of the box priority queue. We shall also discuss the binary heap data structure that is used to implement a priority queue.
Introduce heapq module
Introduce Binary Heap
Binary Heap implementation
We will present the Min Heap as an abstract data structure. We shall implement the Binary Min Heap that can help us realize a priority queue.
We will present the Min Heap as an abstract data structure
We shall implement the Binary Min Heap that can help us realize a priority queue
Run the program
We will introduce you to binary search trees and learn why balancing a binary search tree is important. Then we will provide an overview of a self-balancing binary search tree called as red-black tree.
Introduce binary search trees
Importance of binary search trees
Self-balancing binary search tree called as red-black tree
We will introduce you to a search optimized data structure called as TRIE. We will also present the TRIE as an abstract data type before proceeding to an implementation of a TRIE.
We will introduce you to a search optimized data structure called as TRIE
We will present the TRIE as an abstract data type
Implement a TRIE
In this video, we are going to learn what are graphs and where they are used before we get a hands-on experience in creating and managing graphs using Python.
learn what are graphs
learn where graphs are used
Get a hands-on experience in creating and managing graphs using Python
In this video, we will look into what undirected graphs are. And also look into another way of representing graphs programmatically called as adjacency list through a demo.
Look into what undirected graphs are
look into another way of representing graphs programmatically called as adjacency list
Walk through a demo
In this video, we will learn what a directed graph is. What are its applications. We shall also define directed graph as an abstract data type and start with an initial implementation of the same.
Learn what a directed graph I and its applications
Define directed graph as an abstract data type
Start with an initial implementation of the same
In this video, we will continue to build on the Graph class by completing the remaining operations. Along the way, we also improve on the Vertex class and add neighbor function to it.
Continue to build on the Graph class by completing the remaining operations
Improve on the Vertex class
Add neighbor function
In this video, we will complete the implementation of get_edges method in the Graph class and the required function in Vertex class to get Connections of a vertex.
Complete the implementation of get_edges method in the Graph class
Add the required functions in Vertex class to get Connections of a vertex
Walk through the demo
In this video, we will complete the Graph implementation, by completing the one missing piece in our implementation to get weight of a particular edge.
Complete the Graph implementation
Add the one missing piece in our implementation to get weight of a particular edge
Walk through the code demo
In this video, we will learn we provide an overview of various Graph Operations that we are going to talk over the rest of this course.
Provide an overview of various Graph Operations
Discuss traversal operations
Discuss few others graph algorithms
We are going to learn the Breadth-First Search algorithm and its applications.
Introduce BFS with an illustration
Look at BFS applications
Demo the code
We will learn another graph traversal algorithm called as Depth First Search or DFS. We shall also look at its applications before we see an implementation of DFS.
Introduce DFS
DFS Applications
Demo the implementation
We will learn what a shortest path in a graph. And we shall also discuss a specific shortest path algorithm called as dijkstra’s shortest path algorithm.
Learn about shortest path in a graph
Discuss a specific shortest path algorithm called as dijkstra’s shortest path algorithm
Walk through the code
We will look into the implementation of dijkstra’s algorithm using Python.
Walk through the code
We will learn about what spanning trees. What a minimum spanning tree is. We shall also learn about a data structure called as disjoint sets or union-find that is used in kruskal’s algorithm to find minimum spanning tree.
Learn about spanning trees
Find out what a minimum spanning tree is
Learn about disjoint sets or union-find that is used in kruskal’s algorithm to find minimum spanning tree
We will implement Kruskal’s algorithm for minimum spanning tree using the union-find data structure.
Learn about Kruskal’s
Animated illustration about Kruskal’s
Walk through Kruskal’s algorithm code
Learn about the coding maximum flow tree algorithm in python and see the example.
Learn about Coding Maximum Flow tree
Learn its advantages and applications
Walkthrough the code
Learn what topological sorting is for a Directed Acyclic Graph or DAG and what are its advantages and how we can use a modified DFS algorithm to find topological sorting of a Directed Acyclic Graph.
Learn what topological sorting is for a Directed Acyclic Graph or DAG
Discuss about its advantages
Demo how we can use a modified DFS algorithm to find topological sorting of a Directed Acyclic Graph
Are you looking forward to get well versed with Python that is designed to ground you up from zero to hero in the shortest time? Then this is the perfect course for you.
This course can be of utmost important to you as it guides you in many different ways such as learning basics of data structures, linked lists, and arrays along with coding tuples in Python followed by an example that shows how to program dicts and sets in Python. You will also be shown shown how to apply different algorithms such as Graph traversal, Shortest Path, Minimum Spanning Tree, Maximum Flow tree, and DAG topological sorting. It aslo demonstration on how to realize a hash table in Python.
By end of this Learning Path, you'll be well versed with Implementing Classic Data Structures and Algorithms Using Python along with building your own CV.
Contents and Overview
This training program includes 2 complete courses, carefully chosen to give you the most comprehensive training possible.
The first course, Learn Python in 3 Hours illustrates how u can be up-to-speed with Python in a short period of time, but your search has so far come up with disconnected, unrelated tutorials or guides.
Learn Python in 3 hours is a fast-paced, action-packed course that maximizes your time; it's designed from the ground up to bring you from zero to hero in the shortest time. The course is based on many years of Python development experience in both large enterprises and nimble startups. In particular, the course's hands-on and practical approach comes from the author's experience in rapidly iterating and shipping products in a startup setting, where responsiveness and speed are key.
With Learn Python in 3 hours, you will be up-and-running with Python like you are with your other languages, proving your value and expertise to your team today, and building your CV and skill set for tomorrow.
The second course, Python Data Structures and Algorithms is about data structures and algorithms. We are going to implement problems in Python. You will start by learning the basics of data structures, linked lists, and arrays in Python. You will be shown how to code tuples in Python followed by an example that shows how to program dicts and sets in Python. You will learn about the use of pointers in Python. You will then explore linear data structures in Python such as stacks, queues, and hash tables. In these you will learn how to implement a stack and code queues and deques. There will also be a demonstration on how to realize a hash table in Python. Following this you will learn how to use tree/graph data structures including binary trees, heaps and priority queues in Python. You will program priority queues and red-black trees in Python with examples. Finally, you will be shown how to apply different algorithms such as Graph traversal, Shortest Path, Minimum Spanning Tree, Maximum Flow tree, and DAG topological sorting
This course teaches all these concepts in a very practical hands-on approach without burdening you with lots of theory. By the end of the course, you will have learned how to implement various data structures and algorithms in Python.
About the Authors:
Rudy Lai is the founder of Quant Copy, a sales acceleration startup using AI to write sales emails to prospects. By taking in leads from your pipelines, Quant Copy researches them online and generates sales emails from that data. It also has a suite of email automation tools to schedule, send, and track email performance—key analytics that all feed back into how our AI generated content. Prior to founding Quant Copy, Rudy ran High Dimension.IO, a machine learning consultancy, where he experienced firsthand the frustrations of outbound sales and prospecting. As a founding partner, he helped startups and enterprises with High Dimension.IO's Machine-Learning-as-a-Service, allowing them to scale up data expertise in the blink of an eye. In the first part of his career, Rudy spent 5+ years in quantitative trading at leading investment banks such as Morgan Stanley. This valuable experience allowed him to witness the power of data, but also the pitfalls of automation using data science and machine learning. Quantitative trading was also a great platform from which to learn a lot about reinforcement learning and supervised learning topics in a commercial setting. Rudy holds a Computer Science degree from Imperial College London, where he was part of the Dean's List, and received awards such as the Deutsche Bank Artificial Intelligence prize.
Harish Garg, founder of BignumWorks Software LLP is a data scientist and a lead software developer with 17 years' software Industry experience. BignumWorks Software LLP is an India based Software Consultancy that provides consultancy services in the area of software development and technical training. Harish has worked for McAfee\Intel for 11+ years. He is an expert in creating Data visualizations using R, Python, and Web-based visualization libraries.
Mithun Lakshmanaswamy, part of BignumWorks Software LLP, has been developing Applications in Python for more than nine years. He has written enterprise level distributed applications that are deployed on scores of servers and have the ability to support thousands of users simultaneously. Some of the applications he has developed are related to parsing millions of virus definitions, analyzing network packets from an enterprise setup, etc. He is also quite proficient in the teaching technical concepts and is quite involved with his current org’s training programmes. He has worked on multiple projects working with Python, AWS etc implementing the concepts of concurrent and distributed computing.