
This intermediate python course helps learners deepen their python knowledge and prepares them for competitive programming, covering prerequisites and topics from input and output to conditionals, loops, and data structures.
Learn how the break statement halts a for or while loop immediately, stopping iteration when a condition is met, as shown with list search and user input collection until quit.
Explore how the Python continue statement skips the rest of the loop body and advances to the next iteration in for and while loops.
Identify the Python pass statement as a placeholder for future code, preserving syntax without affecting logic, and use it to satisfy indented blocks in loops during development.
Master Python sets by exploring unordered collections of unique elements, creating sets with curly braces or set(), adding and removing items, and performing union, intersection, and difference operations.
Learn how dictionaries store key-value pairs in Python, using curly braces and colons, then add, access, and delete items, noting keys are unique while values may repeat.
Master Python dictionaries by iterating keys, values, and items, and using two iterators to access key-value pairs. Build programs to compute cart totals and count letter occurrences with in checks.
Learn python exception handling using try, except, and finally to manage errors like zero division and value errors, convert input to integers, and gracefully continue execution.
Open and manage files in Python using read, write, and append modes; use seek to move the pointer, handle file not found with try-except, and apply newline characters.
Learn recursion in Python by converting a for loop that sums from 1 to N to a recursive function with a base case, and compute n factorial using recursive calls.
Learn object oriented programming by comparing classes to blueprints and objects to instances, explore constructors, self, and methods, and understand memory locations via the id function.
learn how inheritance enables code reusability and extensibility by defining superclass and subclass relationships, extending constructors, and overriding methods, illustrated with vehicle, car, and sports car examples.
Big O notation describes a program's runtime and ignores constants, using examples like O(1), O(n), O(2n), and O(2n^2) to compare runtimes.
Discover how binary search in Python finds an element in a sorted list by narrowing with low and high bounds and a median comparison, with runtime of log n.
Explore how selection sort in Python sorts a list by repeatedly selecting the minimum value and moving it to a new sorted list, with a runtime of O(n^2).
Learn insertion sort in Python through a step-by-step example, swapping elements with a for and a while loop, and analyze its O(n^2) time complexity.
Learn how bubble sort works in python by iterating through an unsorted list, swapping out-of-order pairs, and moving the largest elements to the right, until the list is sorted.
Learn how merge sort in python divides an unsorted list, sorts sublists, and merges them into a fully sorted list using pointers.
Implement merge sort in Python by creating a merge function that combines two sorted lists into one, then recursively sort sublists until the base case of one element.
Explore the quicksort algorithm in Python, learning how to choose a pivot, partition the list into left and right sublists, and recursively sort them to produce a sorted array.
Implement quicksort with a three-way partition into less, equal, and greater lists. Use a pivot (first element) and recursion until sublists are size one; analyze n log n time.
Learn intermediate Python in a concise and easy-to-follow course! This course covers topics with multiple real-life examples and practice problems to help you fully understand the concepts and advance your Python skills. You will learn about loop control statements, sets, dictionaries, exception handling, files, recursion, object-oriented programming, and searching and sorting algorithms.
Topics Covered:
Loop Control Statements
Sets
Dictionaries
Exception Handling
Files
Recursion
Object-Oriented Programming
Searching and Sorting Algorithms
Softwares Used:
Pycharm (Platform for coding in Python)
Note: The course assumes you have basic prior knowledge of Python or programming. If you are a beginner, we recommend you take our Python For Beginners (2023) course first. Any software for coding in Python will work for this course.
Information about the Instructor:
AlgoSTEM is a non-profit organization led by Arushi Gupta and Akshaj Gupta that aims to increase accessibility to STEM education. Through its free online courses, AlgoSTEM has taught over 75,000 students worldwide. AlgoSTEM instructors are experienced and knowledgeable about the subjects they teach, including computer science, math, and various sciences.
Along with having multiple Udemy courses, AlgoSTEM has a popular YouTube channel called AlgoSTEM that covers solutions to coding problems, including those from Leetcode, Codeforces, Codechef, and various math competitions.