
Learn how programming turns instructions into actions through algorithms using Python, a high level language, and explore its versatility via interpreter in web apps, data science, and AI.
Set up the Idle integrated development environment to write your first Python program, starting simple and learning you can move to other IDEs later.
Download python from python.org and install Idle to begin coding. Explore Idle settings, customize fonts and themes, open or create files, and run code with run module or F5.
Explore Python's built-in data types: integer, float, boolean, and string. Learn how these store whole numbers, decimals, true/false values, and names for real-world data like customers and usernames.
Learn how to use variables in Python to store data types like integers, strings, floats, and booleans, assign values, and follow naming conventions such as all lowercase letters and underscores.
Create and assign variables in python using idle, practicing int, string, float, and boolean types with meaningful names like user_id, username, user_height, and membership_status.
Learn to assign values to variables, label data types, and use Python's print to display strings and variables for debugging, noting strings must be in quotes.
Learn how to print variables such as user id, username, height, and membership status in python, using single and multiple variable prints, strings with messages, and the idle shell.
Learn arithmetic operators in Python by performing addition, subtraction, multiplication, and division on variables using +, -, *, and /. Explore power and square roots across basic data types.
Explore python arithmetic operators by creating numbers, performing addition, subtraction, multiplication, and division, and storing and printing results to verify outputs.
Explore how to use exponent and modulo operators in Python, using ** for power and % for remainder, with practical examples like 100**20 and remainder calculations.
Learn how to make programs dynamic by using Python's input function to capture user-entered values, store them in variables, and display prompts like what is your name.
Learn to replace hard-coded values with user input using Python's input() prompts. Assign input to variables such as user id, username, height, and membership status, and print the updated values.
Discover how input in Python returns a string, which can mislead arithmetic operations. Use casting to convert input to int or float for correct calculations and dynamic data handling.
Cast Python input from string to int or float to perform correct arithmetic, demonstrating how to add numbers, print results, and avoid string concatenation.
Learn how the order of code affects execution in Python, as the interpreter reads from top to bottom and can raise errors when variables are used before they are defined.
Learn how sequence in Python governs code execution. Printing an undefined variable like username shows a name error, highlighting the need to define variables in the correct order.
For beginners, learn to debug common Python errors by understanding syntax errors and semantic errors, using IDLE's error messages to locate the line and resolve issues.
Explore common Python error messages, including unterminated string literals, syntax errors, type errors, and name errors, with hands-on examples in Idle shell.
Learn how comments, ignored by the interpreter, explain blocks of code, boost readability, and enable sharing, using the hash symbol or triple quotes anywhere to mark notes and halt execution.
Demonstrate commenting in Python by using the hash symbol or three speech marks to annotate variables, basic operators, and prints, and show top or middle placement of comments.
Learn string concatenation in Python by joining first name and last name with the plus operator, adding whitespace, and avoid errors like can only concatenate to str not int.
Learn string concatenation by combining first and last names with a space to form a full name, and note type errors when mixing strings with numbers, prompting casting.
Learn to insert integers into strings using Python's string format method, with placeholders in curly brackets and zero-based positions, to output user name, age, and country in one string.
Master string formatting in Python by using format with placeholders and f-strings to combine strings and numbers, insert variables in the correct order, and print formatted outputs.
Learn how to use the string format method to insert data and control line breaks and spaces in Python strings, using placeholders and triple-quoted strings for printing.
Learn to format Python output by using triple quotes to create line breaks, adjust string literals, and print text on separate lines to control spacing.
Learn string slicing by using zero indexed positions to extract parts of a string. Define start and stop indexes and print the resulting segments, such as initials.
Master string slicing in python by indexing a text variable and printing substrings with start:end, using 0-based indices to extract 'let's go' and 'beach'.
Explore how Python uses lists to store multiple items with square brackets, zero-based indexing, and properties of being ordered, changeable, and allowing duplicates across diverse data types.
Discover how to create and inspect lists in Python, starting with an empty list and then a list of pupil names, and verify the type as list.
Learn to work with lists in Python by using built-in methods like append, insert, remove, and sort, and apply dot notation to manipulate lists in Idle.
Demonstrate how to append a name to a Python list using the append method, showing it goes to the end, and verify the result by printing the updated list.
Learn to insert data at an index in a Python list using the insert method, with zero-based indexing, to place items where you want instead of appending to the end.
Learn to insert items into a Python list at a specific position using the insert method at index zero. Explore duplicates and how results print.
Remove items from a list using the remove method by passing the item to delete; duplicates are allowed, and the first instance is removed.
Remove an item from a list using the dot remove method, passing the item to be removed. Print the list to verify the removal and observe how duplicates are handled.
Sort lists in Python using the final method, learning how sorting changes order. By default, the sort arranges items alphabetically, demonstrated with an IDLE example.
Learn how lists can contain other lists through nesting, using append to place class lists into year group lists, and explore how insert, remove, and sort work with multi-level data.
Create a year seven nested list by appending three class lists, then access and print specific nested items using double brackets and indices.
Convert a multi-word input sentence into a list with split, turning each word into an item, then use pop to remove a specified index and print the result.
Explore tuples, a Python immutable data collection that is ordered and indexed like lists but cannot change in size, and learn syntax, constructors, and single-item comma rules.
Create and explore Python tuples by initializing with items and trailing comma, then access data with indexing and slicing. Learn how to locate an item's position with the index() method.
Access tuple elements by index or the dot index method, and unpack tuples into variables (including partial unpack with an asterisk), while noting tuples are fixed size and memory efficient.
Learn to unpack a tuple by assigning the first items to variables and collecting the rest into a list, using star notation and flexible ordering.
Explore how Python sets enforce membership and uniqueness, store unordered items, and support add, update, discard, and remove operations, with methods for length, min, and max.
Learn to use sets in Python, including creation with mixed data, uniqueness, and order that may vary. Practice add, update, remove or discard, membership tests, and set difference and intersection.
Explore dictionaries as ordered, changeable key-value stores that map keys to values, accessed by strings or integers, and learn to initialize an empty dictionary with curly brackets in IDLE.
Learn to add and manage data in dictionaries, including adding items, accessing by keys or values with get and keys methods, updating, deleting, and nesting dictionaries for a school system.
Learn to manipulate Python dictionaries: add, update, delete items with dictionary syntax and del; access keys and values; and nest dictionaries and lists.
Explore selection in Python by using conditions and if statements to control program flow, with else blocks and relational operators like equal to and less than.
Explore conditionals in Python by using if, elif, and else to control program flow with user input. Build a mini calculator, nest if statements to prevent division by zero.
Learn how logical operators combine conditions in control flow, using and, or, and not to produce true or false outcomes from multiple tests.
Learn to use and, or, and not in Python through a hands-on code walkthrough that compares two input numbers with if statements and prints results.
Learn to use while loops to repeat actions based on a condition, mastering condition controlled repetition and unbounded iteration through a word guessing game example.
Use a while loop for unbounded iteration, prompting for input until you enter the sentinel end, then print the entered word and compute a running total with isdigit and isalpha.
Learn to use for loops for count-controlled repetition, specifying start, stop, and increment with range, and iterating over strings and lists for bounded iterations.
Store data externally with files to enable persistent storage. Learn to create, write, read, and append to files using Python modes x, r, w, and a, and close files.
Create a new file named subjects.txt and write a line to it, then overwrite or append additional lines with proper newline characters. Read the file to display its contents.
Learn to manage files in Python by checking existence with os.path.exists, choosing append or write mode, and using os.remove to delete files, with hands-on examples of path handling.
Learn to read an employee data csv file using the csv module, skip headers, and print or format data rows. Format output to align with the headers using left-justified columns.
Define reusable functions with def, pass data, and return values, using built-in tools like print and len, and name functions descriptively to build modular Python programs.
Define a python function with def, naming it getinput, and accept input in parentheses. Show printing value versus returning it, then assign the return to a variable or print it.
Define your own functions with parameters using the def keyword in Python, distinguish between parameters and arguments, and understand that this example performs an action without a return value.
Learn how to define functions with parameters, return tuples, unpack tuples, and build a simple calculator in Python using add, multiply, and exponent functions, with a main function.
Explore how scope governs variable accessibility inside and outside functions, distinguishing local and global variables, and how the global keyword enables modification of outer variables.
Demonstrate Python variable scope in functions by using global to modify outside variables. See how local variables stay private to a function.
Explore how Python uses classes as blueprints to create objects, initialize attributes with the init method and self, and show instance versus class attributes using an animal class example.
Define an employee class in Python, initialize objects with __init__ and self, set name and salary, London as location, and provide methods to display info and calculate a 10% bonus.
Explore polymorphism in object-oriented programming, where the same method can run on objects of different types, illustrated by boat and car classes and a shared method.
Explore how cat and dog classes use a shared makesound method to illustrate class polymorphism in Python, with name and age, producing meow and bark outputs.
Explore how a parent class provides methods and attributes to a child subclass, and learn to override inherited methods to customize behavior.
Learn to implement class inheritance in Python by creating manager and developer subclasses of an employee base class, override display and bonus methods, and customize department and programming language.
Create reusable code by building your own modules, code libraries saved as a .py file, and import them to access the greeting function with a name argument in your programs.
Create a calculator module and import it to access get numbers, add, multiply, exponent, subtraction, and division. Explore alias and dir.
Import the date time module and create a current date object with now. Format and print the weekday, day, and hour using strftime directives like %A, %d, and %H.
Learn to use python's datetime module with an alias dt, create and inspect current date time, and format it with strftime directives such as %A and %C.
Discover how to use the Python math module, import modules, call sqrt, and selectively import functions for cleaner code and reusable math utilities.
Import the math module and explore its functions with dir, then use math.sqrt, math.pow, math.isnan, and math.fsum to perform square roots, powers, nan checks, and sums.
Learn to code with the Python random module. Build a guessing game using random.randint, input casting to int, and a for loop with break on a correct guess.
Learn to handle errors in Python with try, except, else, and finally blocks to prevent crashes and keep programs running, using built-in exceptions like NameError, ZeroDivisionError, TypeError, and IndexError.
Learn Python exceptions using try/except to handle name errors, raise and alias errors, and manage zero division and file not found errors, including safe file handling.
Do you want to learn how to program with Python but find that many courses become too difficult too quickly? I found this too! I have felt this pain many times, now I have created the course I wish I had when I first learnt to code. This course really is for absolute beginners. I am a teacher with a wealth of knowledge into the minds of beginners to programming. I have seen all the stumbling blocks and curated this course to enable learners to overcome problems whilst building confidence.
I have designed this course to build confidence in newcomers, this extensive program gently introduces you to Python's basics, ensuring a solid foundation upon which to build your coding skills.
In this course, you will explore essential topics like syntax rules, file handling, modules for structuring code, object-oriented programming, creating graphical user interfaces with Tkinter, and harnessing the power of regular expressions for text manipulation.
The curriculum is tailored for a slow pace to guarantee comprehension and foster a supportive learning environment, ideal for those seeking to discover their potential in programming or to find joy in coding. Engage in practical exercises and projects that reinforce your learning, providing a hands-on approach that makes abstract concepts tangible.
This course is not just about learning to code; it's about embarking on a journey to understand the logic and beauty of programming, opening up a realm of possibilities for future exploration, innovation, and maybe even a new career path. Join me to unlock the doors to the digital world, where your creativity can flourish and your problem-solving skills can shine.
Let's get coding!
Kim