
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Learn Python from scratch through hands-on projects, exploring easy syntax, multiple paradigms, web development with Django and Flask, Android apps, games, data science, and AI and ML basics.
Learn how to download Python 3.8.5 and install it on Windows with the 64‑bit executable installer, and note that Linux users can install as well.
Install Python 3 and discover how the interpreter converts your Python code into machine language. Understand what an interpreter does and why it enables your programs to run.
Learn what pip is and how to use the Windows command prompt to install Python packages. See how pip searches, downloads, and installs packages for your projects.
Explore writing your first Python program by running simple print statements in the interpreter, learn why Python is interpreted, and understand basic string syntax with single or double quotes.
Explore the Python interactive shell: how executed code can't be edited, how prints work, and how undefined variables raise errors; restart the shell to reset and re-run changes.
Explore variables and datatypes in Python, learning how to name and assign values, print results, and distinguish integers, floats, strings, and booleans with dynamic typing.
Explore Python's basic arithmetic: addition, subtraction, and multiplication. Understand division variants: slash, double slash, and modulo for the remainder, and learn to store results in new variables, including floats.
Explore exponentiation and operator precedence in Python, using the power operator to raise numbers and showing how brackets override the default order of operations.
Discover core string operations in Python, including concatenation to build full names, repeating strings by multiplication, and escaping quotes with backslashes.
Learn how to get user input in Python with the input function, provide prompts, avoid hard coding, and convert string input to integers via int() for calculations.
Learn how Python allocates memory for variables and uses addresses to identify objects, showing how multiple variables can refer to the same value.
Write and run your first Python script by creating a new file, writing code to read user input, convert to integers, perform addition, and print the result.
Explore Python's comparison operators: less than, greater than, less than or equal, greater than or equal, equal to, and not equal, and their boolean results for integers and floats.
Explore logical operators in Python, including and, or, and not, as binary operators on two conditions yielding boolean true/false outcomes.
Explore how to use an integrated development environment and download the PyCharm community edition, with notes on installation options for Windows and Linux and alternatives like Visual Studio.
Install and configure the PyCharm IDE, set up a Python interpreter, and create a project with a virtual environment for beginner Python development.
Understand how Python uses if-else statements to evaluate conditions, execute blocks, and control flow with indentation, colon syntax, and true or false outcomes.
Explore membership operators in Python, using in and not in to check if a character or substring exists in a string, returning boolean results.
Explore the if-elif-else ladder in Python, detailing how to structure conditions with blocks, indentation, and nested checks, and applying it to simple examples and a calculator.
Learn how to swap two values in Python efficiently using tuple assignment, avoiding temporary variables, by assigning x, y = y, x, and see how printing and type conversions work.
Learn how the end parameter in the print function controls newlines and allows string and integer concatenation in Python through practical examples.
Learn how while loops operate in Python, using a remote control analogy to illustrate initialization, condition checks, iteration, and updating the counter to avoid infinite loops.
Explore how Python's range function generates numbers from start to end-1 with an optional step, and use it in a for loop to print each value.
Design a simple Python calculator by looping with while True, prompting for add, subtract, or multiply, and inputs for two numbers, using break to exit.
Learn to compute the sum of integers from 1 to n in Python with a single expression using range and sum, without loops, and compare to a loop-based approach.
Explore Python data structures, including lists, dictionaries, sets, and tuples, as ordered collections of values, and examine strings as a distinct collection to understand their roles.
Learn how strings are sequences of characters, explore zero-based indexing, positive and negative indices, and access the last character while handling index errors.
Learn to slice strings in Python by specifying start, stop, and step values, including negative indices, to extract exact substrings in the complete Python programmer course.
Demonstrate deleting and redefining strings, creating new strings, and concatenating words with the plus operator, while noting string immutability and Python version differences.
Iterate over a string using a for loop to print each character one by one. Understand that strings are iterable and apply iteration to lists, dictionaries, and sets.
Explore built-in string methods in Python, including upper, lower, replace, and length, and learn to join, split, and format strings using placeholders and indexing.
Learn how to reverse a string in Python using slicing, starting from the last element with [::-1], and understand negative indexing to simplify the process.
Explore Python lists as a flexible data structure by creating lists, storing values of any type, and updating them through indexing, appending, and printing.
Explore Python lists, including nested lists, zero-based and negative indexing, and slicing to access elements, with examples of accessing outer and inner lists and list length.
Learn how to change values in a Python list using indexing and slicing, including negative indices and slice assignments to modify multiple elements.
Learn how to add elements to a list with append and extend, comparing single-element addition to adding a collection of values, illustrated with a numbers list.
Explore core list methods in Python, such as insert, sort, reverse, pop, and remove, and learn how index, value, and optional parameters control element manipulation for lists and iterable objects.
Learn how to count occurrences with list.count, locate the first index with list.index, and obtain a copy of a list using copy, illustrated with my_list and squares.
Explain how removing a value from a list works, focusing on edge cases when the value isn’t present and what happens in that scenario.
Learn to check if a user-provided string is a palindrome by reversing the string, storing the reverse, and comparing it to the original.
Master Python list comprehension to generate squares with a for loop and range, and apply optional conditions to produce even or odd results.
Learn how the Python string join method converts a list of words into a sentence by specifying a separator, such as a space, to join elements into a single string.
Use list comprehension to create a new list of elements common to two input lists, demonstrating the intersection of lists.
Learn how to collect user input into a list in Python by building an empty list and appending elements with a for loop, or using a list comprehension.
Explore how tuples differ from lists, emphasizing immutability. Create tuples with or without parentheses, and apply the single-element comma rule, indexing, slicing, and concatenation, including nested lists.
Explore Python dictionaries as key-value stores, access values with keys or get(), add or update entries, and create dictionaries via literals, dict(), or a list of tuples.
Learn how dictionary comprehension creates key-value pairs from a for loop and range, mapping numbers to their squares, with zero excluded.
Explore dictionary comprehension in Python to build a word-to-length map by taking a sentence input, splitting by spaces, and mapping each word to its length.
Explore python dictionary methods such as get, keys, values, and copy, show dot-based access, and demonstrate removing a value by key to update the dictionary.
Explore Python sets, their unordered nature and lack of indexing, and learn practical operations like add, discard, remove, and pop with examples of creating and managing sets.
Learn Python set operations: union, intersection, and difference, with duplicates removed and common elements identified. Explore how A and B combine or subtract to form new sets.
Create set objects and explore subsets and supersets in Python. Check whether one set is a subset or a superset of another, and clear elements to form an empty set.
Learn how to define and call functions in Python to perform tasks and return values. Discover how passing arguments and using indentation contribute to reusable, readable code.
Demonstrate scope and lifetime of an object by showing how passing a value to a function keeps outer variables unchanged unless returned.
Learn to implement a quadratic solver in Python using a function with keyword arguments for a, b, and c, and compute roots with the quadratic formula and math.sqrt.
Explore default arguments in Python, learn how to set and override default parameter values, and use keyword arguments to control function behavior.
Learn how arbitrary arguments collect a variable number of values into a tuple and how keyword arguments interact with such calls.
Discover anonymous lambda functions, single-statement expressions assigned to variables and called with arguments, with examples of adding numbers and squaring results.
Sort a list by its second element using a lambda function as the key, demonstrating how lambda x: x[1] controls the sort order.
Learn how to use map, zip, and filter in Python to transform lists, square elements, and combine sequences with lambda functions.
Learn how to create and use your own Python modules and packages, define functions, and import them into other programs, with examples like a calculator and using the math module.
Use python's built-in math module by importing it, then call sqrt, log, ceil, and floor; ceil returns the next integer, while floor returns the integer below.
Explore object oriented programming in Python, defining classes and objects to model real world ideas. Learn how attributes and methods describe object behavior, with templates and unique instances.
Learn how to define a Python class with the class keyword, instantiate objects, and apply constructors, attributes, and methods to create instances of that class.
Learn how constructors initialize objects in Python by overriding __init__, using self, and defining name and age attributes; see how objects are created and properties set during instantiation.
Learn how to define and assign attributes like name and age to objects, instantiate classes with a constructor, and access attributes through the object.
Learn how to implement Python magic methods by building a complex number class with real and imaginary parts, and use print and the + operator through operator overloading.
Learn to define a class with methods and attributes in Python, use a car example to get mileage and color, instantiate objects, and call methods via dot notation.
Discover how inheritance lets dog, cat, and lion subclasses access methods defined in the animal superclass, while each subclass adds its own behaviors.
Demonstrate method overriding in Python, where a dog redefines the animal's sound method to bark. An object's lookup checks its own class first, then the parent class.
Hey there! Welcome to the course on Python 3 named The Complete Python Programmer: From Scratch to Applications.
As the name suggests, You'll learn everything in Python from Scratch and upto developing simple projects in Python. Coding is different from Developing. We'll learn both coding and developing. If you do not know anything about Programming, this course is your cup of tea.
Course Outcomes:
1. Modelling some real world problems in Python and solve them.
2. Building projects in Python
3. Understanding all the foundations of Python and knowing how to apply them
4. Understanding all the Pythonic Data Structures, Objects, Functions and Modules
5. Knowing how to use Jupyter iPython Notebook for Data Science Applications
6. Foundations for Data Science: The Numpy module
7. Understanding Client-Server Architecture and Making HTTP Requests with Python.
Highlights:
1. Advanced Math in Python
2. GUI Projects
3. Chatbot (Speech Recognition) in Python
4. Coding Problem Sheets to practice
5. Beginner-friendly and so on.
6. Problem Solving using Python (Newly Added)
Python is a widely used, interpreted, high-level, general-purpose programming language. Python's design philosophy places a strong emphasis on code readability and makes considerable use of whitespace. Its language constructs and object-oriented methodology are designed to aid programmers in creating clean, comprehensible code for both little and big projects.
Python uses garbage collection and has dynamic typing. It supports a variety of programming paradigms, including procedural, object-oriented, and structured programming (especially). Due to its extensive standard library, Python is frequently referred to as a "batteries included" language.
Nothing more to write. I'll see you there in my lectures.