
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Discover what Python is and its uses in data science, machine learning, and web design. Learn how to install Python, set up IDLE, and explore IDEs like Spyder.
Master Python's order of operations and operator precedence, including parentheses, exponentiation, and string operations, then explore errors, the interpreter, and the rich standard library.
Explore Python basics by building and inspecting lists, understanding dynamic typing, indentation rules, and control flow with if/elif/else and for loops.
Explore practical concepts in Python programming, including data structures, for loops, indentation, range function usage, importing modules, and using time and random modules to control execution delays and randomness.
Explain Python data structures: list, tuple, dictionary, and set, and how objects, classes, and methods relate to programming, with hands-on examples in Anaconda, Spyder, and JupyterLab.
Master Python list manipulation by using append, extend, and insert to add items, and pop, remove to delete; explore indexing, negative indices, and start-stop-step slicing, plus string joining.
Explore how dictionaries store key value pairs using curly braces, access values by keys, and perform dynamic updates and frequency counts in Python.
Explore python dictionaries as key-value pairs in curly braces, learn to sort keys with sorted, check presence with in and not in, and manage counts with items and setdefault.
Explore how sets in Python provide mutable, unique collections with no duplicates, enable fast lookups, and, from Python 3.6 onward, preserve input order.
Explore sets and tuples in Python, including union, difference, and intersection. Understand immutability, compare with lists, and see practical uses like indexing, slicing, and nested dictionaries.
Learn how Python functions and modules enable code reuse, using def, indentation, docstrings and triple quotes; define input arguments, returns, and booleans, with vowels example and naming conventions.
Explore Python data structures and functions, including lists, dictionaries, sets, and tuples, plus type annotations and keyword arguments for clearer, safer code.
Learn how to share Python functions by creating modules and importing them across programs, and understand how Python finds modules in the current directory, site-packages, and the standard library.
Explore by value and by reference argument passing in Python, illustrating how mutable and immutable objects like lists, strings, and numbers behave as function arguments, with practical examples.
Learn to create and use Python functions and modules, including built-ins like int, float, and str, math module, recursion with base cases, factorial, fibonacci, and functions with *args and **kwargs.
Explore Python classes and object oriented programming, define a class, instantiate objects, and implement methods and attributes, including behavior, state, and the self parameter.
Learn to implement a Python class with an increment method using self attributes, initialize with __init__, and leverage magic methods for representation, equality, and object state.
Explore implementing Python classes for point and rectangle, calculating the center, mutability, and attributes; compare pure functions with modifiers and time arithmetic in a practical tutorial.
Explains how to work with Python time objects, convert time to seconds, implement int to time conversions with divmod, and add robust debugging with validation and assertions.
Define standard classes with self and methods, implement __str__ and time objects, and explore polymorphism and inheritance with the super built-in function.
Learn how to read and write data to text files in Python using open, read, readlines, and write modes, handle relative and absolute paths, and safely manage file closing.
Learn to manage json files in Python by saving and loading data with the json module, and handle errors with try-except blocks, including file not found and division by zero.
Learn how to use try-except blocks and refactor Python code into functions to boost readability, handle file not found errors, and manage password storage with JSON.
Explore advanced Python topics using Jupyter Lab, including IPython interactive environments, notebooks, kernels, and work with data structures and algorithms: unpacking iterables, star expressions, and practical examples.
Master keeping the last n items from sequences with deque, using the star expression for unpacking in Python, and building a history of lines.
Learn to find the largest and smallest n items in Python using sorting, slicing, and heapq, including min-heap and max-heap approaches, with practical examples.
Explore Python dictionary calculations, including min and max by keys and values, pairing with zip, and identifying common keys across dictionaries.
Learn practical python data handling with itemgetter and attrgetter for multi-key sorting, Counter for frequency counts, and grouping data by city with groupby and defaultdict.
Explore named tuples and their use in Python to map names to sequence elements, compute salaries, and extend records, while leveraging list comprehensions, dictionary comprehension, and the replace method.
Learn how Python's chain map merges multiple dictionaries into a single view, where duplicate keys favor the first mapping, and compare its behavior with the update method for merging dictionaries.
Explore python programming through practical exercises that cover lists, dictionaries, tuples, and collections tools like defaultdict and heapq, plus grouping, sorting, and dictionary comprehensions for data tasks.
Explore Python string and text handling, including splitting with built-in and regular expressions, matching starts and ends, and using the re module for advanced text processing.
Explore fnmatch to match wildcard file patterns in Python, compare fnmatch and fnmatchcase, and apply regex concepts like re.compile, groups, find, and sub for text searching.
Learn how to use Python's regular expressions to extract the shortest quoted text and master Unicode normalization, including Unicode data, NFC/NFD forms, and ASCII representations.
Explore Python Unicode with regular expressions, including matching Persian digits and the Latin sharp s, using re and regex; learn stripping, translating, normalization, and efficient text cleaning.
Align text in Python using ljust, rjust, center, and format; efficiently join strings with join and generator expressions, while managing memory and output types for clean, aligned text.
Explore HTML and XML concepts, including tags such as header, title, and link, and Python techniques for escaping, unescaping, and encoding text; tokenizing with regex and byte versus string handling.
Engage in a structured set of Python exercises covering string separation with multiple separators, regex operations, file existence checks, Unicode handling, and tokenization to build robust debugging skills.
Are you ready to embark on a comprehensive journey to mastering Python programming? My course is designed to take you from absolute beginner to accomplished Python developer. Whether you have no prior programming experience or are looking to consolidate and advance your existing Python skills, this course covers everything you need.
This course provides a step-by-step guide through the fundamentals of Python, including data types, control structures, functions, and object-oriented programming. You'll also delve into more advanced topics such as modules, file handling, and error handling.
I ensure that the learning process is hands-on and engaging, with plenty of exercises and projects to apply what you've learned.
One of the highlights of this course is the use of Jupyter Lab and Spyder, two of the most powerful tools in the Python ecosystem. Jupyter Lab offers an interactive environment that's perfect for data science and scientific computing, while Spyder provides a robust integrated development environment (IDE) tailored for Python development. You'll learn to leverage these tools to write, test, and debug your Python code efficiently.
By the end of this course, you'll have built a solid foundation in Python and will be capable of tackling real-world projects with confidence.
Join us and transform your programming skills from 0 to 100 with expert guidance and a structured learning path!