
Learn programming and python by solving problems through step-by-step reasoning and translating ideas into code, while exploring functional and object-oriented concepts, algorithms, and hands-on exercises.
Install Python on your machine by downloading from python.org, ensure Python 3.9.x is added to your path, verify in the command prompt, and run a sample print('hello') to confirm.
Install PyCharm, the Python IDE from JetBrains, using the free community version, then configure path and file associations, and prepare to write the hello world program next.
Configure the integrated development environment and create a new Python project, then write a simple program that prints hello, 1, 2, and welcome to the course of programming.
Learn to write simple Python programs using print statements to output A, A, ABC, then align characters with spaces to produce BBC and aligned lines.
Learn to define integer variables in Python, assign values with the assignment operator, and inspect types. Understand identifier rules, case sensitivity, and common arithmetic operators.
Explore integer variables, using type() to check types, and perform arithmetic with addition, subtraction, multiplication, division, floor division, and exponentiation in Python.
Learn to compute the total and average scores for three players using meaningful variable names, print the results, and emphasize readable formatting, comments, and separating code parts.
Learn to compute ball color probabilities in Python using integer variables for black, white, and green, summing to total and printing results (0.5, 0.3, 0.2) for 5, 3, 2.
Discover how integer variables are immutable, causing memory blocks on value changes, with old blocks freed by garbage collection, and learn binary representations plus conversions like bin, hex, and int.
Learn how to swap two integer variables in Python using a temporary variable, follow the assignment steps, and print the swapped values 3 and 5.
Demonstrate swapping two variables without a temporary variable by storing their sum in one variable and recovering originals with subtraction. Observe how 5 and 3 become 3 and 5.
Explore floating point variables in Python for beginners, learn how decimals differ from integers, and perform addition, subtraction, multiplication, and division, including mixed mode arithmetic.
Multiply two floating point variables representing the rectangle's length and breadth in Python to compute its area, store the result, and print the area (8.75).
Compute the average speed in Python from three floating point distances covered in three hours by summing the distances and dividing by three, then printing the result.
Explore advanced floating point concepts: immutable variables, binary storage causing inexact values, and how Python formats numbers with minimal digits, highlighting pitfalls in comparisons.
Explore boolean variables, true and false values, and the logical operators that compare and combine them. Learn how zero means false and non-zero means true in Python and related contexts.
Learn how to write meaningful comments that aid understanding while avoiding redundant or outdated notes. Use necessary, decision-based, warning, and todo comments to communicate your logic and guard code quality.
Boost Python code readability and reliability by using spaces around operators, blank lines to separate logical steps, and clearly separating input, calculation, and output blocks.
Avoid magic numbers by naming constants with meaningful identifiers. Use a circle area example where pi is defined as a named constant to improve readability and maintainability.
Explore how if statements control program flow in python by evaluating conditions, executing indented suites, and updating results, with practical examples of true and false branches.
Explore if statements in Python with practical examples that show how variable values, comparisons, and assignments drive which code runs or is skipped, and how outputs form.
Learn to determine odd or even numbers in Python using the modulo operator to check the remainder, print the result, and exit after confirming an even number.
Explore how to use if-else and elif chains in Python to control program flow, including indentation, nested conditions, and the conditional expression to assign values based on a condition.
Explore Python for beginners by solving if-else exercises to find the largest of three numbers, compute simple interest, and determine employee bonuses using conditional expressions.
Explore nested if statements in Python, understand multi-part conditions, and learn how deep nesting increases complexity, with examples of divisibility by two, three, and six, and strategies to simplify logic.
Explore a nested if example that assigns points by shape and color, such as blue square five, yellow square ten, blue circle fifteen, and yellow circle twenty.
Explore how to implement a leap year checker in Python by applying the rules for 100 and 400, or four, using a boolean flag and print statements.
Learn how to define and use functions to reuse logic and enable modular programs, by passing arguments, returning results, and invoking functions such as the largest of three numbers.
Define a function with two arguments, name and age, to print a greeting, the name, and the age. Call it with John 35 to illustrate no return value.
Define a function that checks if a number is odd by dividing by two and checking the remainder, then use and to verify if all three inputs are odd.
In Python for beginners, this lecture shows writing a three-digit sum digits function that extracts digits by division, sums them, returns the result, and demonstrates calling it for multiple numbers.
define a function to find the middle number among three given numbers by checking their orderings and returning the middle value, with examples showing inputs 15, 7, and 8.
Define function size with two rules from Uncle Bob: keep functions small and even smaller, focused on a single task. Avoid meaningless divisions and redesign to stay SRP compliant.
Define function objectives by applying the single responsibility principle, ensuring each function does one thing. Split responsibilities into separate functions, e.g., prime check and even check, and avoid boolean arguments.
Learn how many arguments a function should have, from zero in methods to two or three, and reduce arguments by wrapping data in a class and applying single responsibility principle.
Learn to validate function parameters through defensive programming, use explicit checks rather than assertions, and ensure parameter validation works in both testing and production for reusable Python code.
Explore Python lists as a versatile data structure that holds integers, floating point numbers, and strings, demonstrates zero-based indexing, element access, and using len() to determine length.
Learn Python lists with practical examples: create a scores list, access seventh, ninth, and fifth students by zero-based indices, and count elements with length on a heights list.
This lesson demonstrates calculating an average score from a five-element list by summing indexed scores, using len to find the count, dividing total by length, and printing the result.
Explore how while loops repeat statements while a condition remains true, using a count less than five example, and learn to increment counter and exit when the condition becomes false.
Explore a Python while-loop example that performs a linear search on a list to find a target, returning its index or -1 if not present.
Define a Python function total that sums all list elements using a while loop, increments an index, returns the sum, and prints the result with example totals.
Learn to implement a function that finds the largest number in a list using a linear search. Initialize the first element as largest and increment the index outside the if.
Explore how the break statement exits a loop by using a simple infinite while and a count check, producing the same output as a counter condition.
Discover how the break statement exits a loop when the target is found in a list, returning the first matching index and improving efficiency for large data sets.
Write a function to check whether a given number is prime, using a flag and a divisor loop that tests divisibility, as shown with 31, 39, and 13.
Learn to avoid common loop counter mistakes in Python, such as missing increments, wrong placement, or reversing direction, which can cause infinite loops.
Identify a common infinite loop error in Python and learn how a break statement, when properly placed, ensures termination. Avoid missing the break statement or placing it under unlikely conditions.
Explore how to avoid unnecessary iterations in prime number checks by early returns, skipping even numbers, using a two-step increment, and stopping at the square root for efficiency.
Illustrates how iterating two lists to compute differences can trigger out-of-bounds errors and shows guards such as looping to the minimum length and adding checks.
This course is for learning the programming in a step-by-step manner using Python.
This course is for those who -
Want to learn Programming
Want to focus on learning the art of Programming
Are ready to learn by doing things
Want to work on programming challenges, solve problems, make mistakes and learn from them
Want to focus more on reasoning than the syntax
This course is mainly about Programming, using Python. It intends to share with you
How to solve problems
Develop the algorithms
How to write the code in a clean and professional manner
The Best practices and common mistakes in the Programming World
What this course covers
It starts from very Simple exercises, linear flow
Conditions (If something happens, then what to do and what not to do etc)
Loops (To repeat the operations with defined/undefined/conditional number of iterations)
Modularization (To divide the overall solution in logical steps) - It not only covers how to implement modularization, it also tells you how to identify the modules and how to use them logically
Object Oriented Programming (How to think in terms of solving a real world problem)
Common Data Structures (Lists, String, Dictionaries, Sets), including the interesting and commonly asked interview questions
Packages and Library Development (How to develop your own software packages and use them at multiple places)
In summary, this course takes its student from a novice level to the next level in a practical manner.