
Explore what python is, its simple, open-source design, and how its extensibility fuels broad adoption by companies, with a focus on python 3.6.
Explore why developers choose Python for software quality, productivity, portability, and rich standard and third-party libraries. See how Python's readability, object-oriented and functional styles, and cross-language integration boost practical programming.
Explore how Python powers desktop, web, and data applications from Tkinter GUI and databases to Django frameworks, robotics, and artificial intelligence, highlighting its versatility across domains.
Compare Python's simplicity with Java's verbosity by showing shorter code, explicit typing in Java, and braces vs indentation, with def functions and for loops in Python.
install python from python.org using a three-step process, download the matching installer for your operating system, run the setup wizard, and verify the installation with a hello world program.
Verify Python works by running the hello world example in IDLE, the lightweight development environment. See how the print statement outputs hello world and how the Python interpreter handles it.
Understand how Python functions as a general purpose language and how the Python interpreter executes code, bridging programs and hardware via an executable and support libraries.
Explore how a Python script is executed—from saving a .py file in an editor or IDE to bytecode compilation and the Python interpreter running with the virtual machine and OS.
Explore the five common Python implementations, including CPython, IronPython, Jython, Stackless Python, and pipeline, and understand how their execution models and environments differ.
Explore popular Python ide options, including Idle, Eclipse, PyDev, PyCharm, Atom, Vim, and NetBeans, and compare features like code completion and debugging to choose the right tool.
Download and install Eclipse, add the PyDev plugin, configure the Python 3.6 interpreter, set a default workspace, and create a lab project to run Python code.
Explore Python syntax and central concepts, including print and input, indentation, variables, data types, operators, and type conversion, with guidance on testing and resources for beginner to intermediate programmers.
Explore built-in Python functions such as print, input, and format to test code in the console, display outputs, and format strings with placeholders.
Explore the Python conceptual hierarchy, showing how programs consist of modules, statements, and expressions that manipulate objects with operations, and how import and the date time module illustrate real examples.
Explore Python syntax by comparing it with C-like languages, highlighting indentation-driven blocks, optional parentheses, and the colon rule, making Python beginner-friendly and highly readable.
Explore Python identifiers, names for objects like variables and functions, with rules for starting with letters or underscores, case sensitivity across platforms, and avoiding reserved words.
Define variables and understand how Python automatically allocates memory for data types. Identify numeric, string, list, tuple, set, and dictionary types, and compare mutable versus immutable behavior.
Learn how to perform data type conversions in Python by using built-in type functions to convert input strings to integers and floats and other built-in types.
Explore Python documentation sources, including hash comments, the Derf function to list object attributes, and docstrings, then use P-doc, standard manuals, and web resources like Python.org.
Explore how conditional statements drive Python decision making with if and elif, and nested structures; learn how true or false expressions determine executed code, no switches.
Practice the if/elif/else conditional flow in Python by collecting user input, converting it to int, and printing outcomes based on comparisons and grading logic.
Learn how to implement nested if statements to model retail and wholesale discounts, using totals and input values to determine appropriate discounts.
Create an invoice program with conditionals and type conversions to determine discounts for retail and wholesale customers, then calculate and display the final invoice total.
Explore Python iteration statements, or loops, which repeatedly execute blocks of code using while loops, for loops, and nested loops, with break, continue, and pass as control statements.
Learn Python's while loop, an iteration that runs code while a condition is true and, as x increments to 10, prints 'I have reached the end' and stops.
Explore the for statement in Python, iterating over strings and lists with an iterating variable, and using range to control start, stop, and step.
Use break to terminate a loop when the target is found in a list, and continue to the next iteration if not found, using a found flag and len.
Master nested loops by using an outer loop to collect three test scores and an inner loop to validate each score between 0 and 100, computing a total.
Explore while loops, for loops, range function, and nested loops through a future value calculator that estimates investment growth from monthly contributions, interest rates, and years, with currency rounding.
Explore lab 3 in programming with Python, using a for loop from 1 to 20 and the modulus operator to print each number as even or odd.
Learn to implement fizz buzz from 1 to 100 using modulus to check divisibility by 3 and 5, and print fizz, buzz, or fizzbuzz accordingly, practicing loops and conditional logic.
Build an incrementing triangle of hashes using a simple loop in Python, starting from an empty string and repeatedly applying X += '#', driven by for i in range.
Explore Python functions and modules, including standard and custom modules, with topics on recursion, generator functions, and lambda expressions, plus lab activities on factorial and fibonacci calculations.
Define Python functions with def, a name, parameters, a colon, and an optional docstring, then indent the body and return values to the caller.
Explore how Python passes arguments by reference, so modifying a list inside a function changes the original list outside. A vehicle list example demonstrates this behavior.
Explore how Python handles four types of function arguments—required, keyword, default, and variable length—demonstrating positional order, keyword mapping, defaults, and flexible inputs.
Rebuild a future value calculator in Python by defining a calculate_future_value function and a main function, using an if __name__ == '__main__' guard to gather inputs and compute future value.
Explore modules in Python by organizing code into reusable files, importing standard and user-defined modules, and building runnable programs with functions, classes, and variables.
Create a user defined Python module with Fahrenheit to Celsius conversion functions and a main testing routine, then learn how to import this module into another program.
Import a module with import statement, prefix calls with module name, and study options: import temperature as temp, from temperature import to Celsius, from temperature import all, and import temperature.
Describe how Python locates modules by searching current directory, then the Python path, and finally installation default path, and show how to inspect and modify path with environment variables.
Document Python modules and functions with docstrings using triple quotes, placed at module and function levels, and use help to read the documentation for using a temperature conversion module.
Learn to use Python's standard modules by importing them and calling their functions to extend program capabilities. The lecture highlights the random module with dice rolls and other examples.
Build a Python temperature converter that lets users choose Fahrenheit to Celsius or Celsius to Fahrenheit, enter a degree, and view the converted result via a menu.
Build a Python guess the number game using the random module, with a 1 to 10 range, high/low feedback, and replay options via display title, play game, and main.
Explore recursion, a self-referential function technique, and compare it with loops, applying it to factorial and other problems in math, sorting, and data structure traversal.
Explore generator functions that yield values, suspend state, and resume to produce a sequence. Use next and StopIteration to iterate, with memory-efficient streams and a Fibonacci example.
Learn how anonymous functions work in Python with lambda to create unnamed function objects, compare it with def, and use them inline with map and filter for list processing.
Rewrite the factorial with a recursive approach and demonstrate its elegance over looping, using a base case of zero returns 1 and producing 720 for 6.
Learn to compute a Fibonacci sequence using iterative, recursive, and generator approaches, compare efficiency, and print terms with loops and range up to a chosen limit.
Explore strings in Python by using built-in functions and string methods to search, replace, split, join, and handle case and spacing, with labs on data validation and a word counter.
Discover python string techniques by using the repetition operator to repeat text, the in operator to search substrings, and for loops to iterate characters and print ordinal values.
Explore basic Python string methods such as isalpha, isdigit, isnumeric, isalnum, isdecimal, isspace, startswith, and endswith, with practical examples using a movie title and year.
Learn basic Python string methods for case handling, including capitalize, lower, upper, swapcase, and title, with practical examples like Monty Python phrases and islower/isupper checks.
Learn to format strings in Python using spacing methods like center, strip, lstrip, rstrip, ljust, and rjust, and build neatly aligned console grids.
Learn to count, find, index, and replace string parts in Python, and apply to emails, words, and phone number formatting.
Explore splitting strings into lists with Python's split method, using custom delimiters and line breaks, then extract items by index to reformat data such as addresses.
Build a create account program that validates a user's full name and password using string methods, including strip and indexing, with checks for digits, uppercase, lowercase, and minimum length.
This lab guides you to build a Python word counter that tallies words in a paragraph, using text processing steps like lowering case, removing punctuation, and splitting into words.
Learn how Python handles numbers, from floating point approximations to the decimal module for precision, format numbers, use locale for currencies, and complete the invoice lab.
Explore how floating point numbers work in Python, compare floats with the decimal module for precise values in financial and gaming applications, and understand rounding and scientific notation.
Explore how to use the string format() method to display and format numeric values, including integers, floating points, percentages, and scientific notation, with decimals, padding, and alignment.
Learn how the Python locale module formats currency and numbers by locale, using set locale, currency, and format functions, with examples for us uk de and mac environments.
Learn how the decimal module yields exact decimal numbers for precise financial calculations, creating decimals from strings, mixing with integers (not floats), and rounding via quantize.
Demonstrates building an invoice program with the decimal module to replace floating point numbers, using format and quantize for precise totals, discounts, and taxes.
Explore dates and times in python, creating and formatting date time objects, calculating spans, and comparing dates, with practical labs on the invoice date program and hotel reservation program.
Learn to work with dates and times in Python by importing the date and time module, accessing its classes, and initializing them through constructors to implement date time functionality.
Learn to create datetime objects by parsing user input strings with parse time and format strings, using codes like %d, %m, %Y, %H, %M, and %S for hotel reservation workflows.
Parse user-entered dates and reformat them using Python’s date-time formatting with format codes for day, month, year, hour, minute, and second, including locale-based options.
Explore working with spans of time in Python using the time delta object to add or subtract durations from datetimes, and compute differences between dates with total seconds.
Extract year, month, day, hour, minute, second, and micro-second from a date time object in Python. Check for Halloween and compute last year or next year dates using arithmetic.
Compare date and time objects to determine the elapsed time between arrival and departure dates and compute the corresponding hotel stay cost using the days elapsed.
Build a Python lab that lets users enter an invoice date, adds 30 days with timedelta for the due date, and reports days overdue or days left.
this lab builds a hotel reservation system in Python, guiding users to enter arrival and departure dates and calculate nights, total price, and august peak rates.
Explore lists, tuples, and dictionaries, learn mutability concepts, and master list operations, nested lists, slicing, and sorting, using built-in functions and the math module for min, max, and random choices.
Learn to create and manipulate Python lists, a mutable collection that can hold numbers, strings, or mixed types, using indexing, slicing, the repetition operator, and common list operations.
Learn to add and remove items in Python lists using append, extend, insert, del, remove, and pop, including index lookup and the value returned by pop.
Learn to process list items using len, in, for and while loops, with conditional checks and safe removal to avoid value errors, and compute totals from scores.
Explore how Python passes lists into functions, comparing mutable and immutable types, and learn why lists update in place while immutable values require returning new results.
Learn how to create and manipulate nested lists in Python, representing two-dimensional data as rows and columns, including appending movies, indexing, and iterating with nested loops.
Master counting, reversing, and sorting lists in Python with count, reverse, sort, and sorted. Understand in-place versus new-list results and using a key to customize sorting.
Explore copying lists with shallow and deep copies and use copy.deepcopy; master slicing with start, end, and step, including reversing; and practice concatenating lists with extend and the plus operators.
Create a simple employee management program that uses a list to store employees. Users can show all employees, add new ones, delete existing ones, and exit the program.
Develop a Python employee management app using a nested list to store name, title, and years, and implement add, show, and delete with a loop-driven nested display.
Explore tuples as immutable Python sequences using parentheses, a trailing comma for single items, indexing like lists, and unpacking with multiple assignment for returning values from functions.
Crunch numbers in Python to compute the average, median, minimum, maximum, and duplicates for a fixed sequence and a random list, illustrating sequence handling and simple data analysis.
Explore Python dictionaries as a core data structure, including adding, deleting, looping over values, and converting between dictionaries and lists; practice with country codes and employee management labs.
Learn to get, set, and add items in dictionaries using bracket notation, handle missing keys with conditional checks or the get method, and update or extend dictionaries in Python.
Delete items from a Python dictionary using the del keyword, the pop method, and existence checks to avoid key errors, with examples like removing the United States from countries.
Master Python dictionary iteration using the keys, items, and values methods. Learn to loop, unpack key-value pairs, and display keys, values, or both with view objects.
Learn how Python converts between dictionaries and lists using the list and dictionary constructors, including turning a two-dimensional list into a dictionary and sorting dictionary keys.
Explore using dictionaries to store complex data types, including nested dictionaries and lists, access nested values, handle missing keys with get, and build robust data structures.
Learn to store and manage country codes in a dictionary, performing view, add, and delete operations to simulate a lightweight data management app.
Explore Python file IO, opening and closing text files, reading and writing text and binary data, ESV and CXXVI formats, pickling, and directory creation, renaming, duplication, and removal.
Open, read, and write files in Python to persist data across sessions, using text and binary types, and serialize objects with pickle. Remember to close files to release resources.
Open text files in Python with the open function, using modes r, w, a, and b to create, read, or write. Use with statements to auto close and prevent leaks.
Learn to write to a text file in Python using write or write_lines, convert non-string values to strings, control newlines, and choose overwrite or append modes.
Learn how to read text files in python using for loops and the read, readlines, and readline methods, including using with open for safe file access.
Learn how to write a Python list to a text file and read it back into the console, using for loops, newline handling, and file open modes.
Learn to build an employee management program 4.0 in Python that stores, reads, and persists employee data in a text file, with commands to list, add, and delete.
Learn to write rows to a cxxvi file with the CSP module and a writer object, using a delimiter and universal newline mode so Excel can open it.
Lab 2 uses the cxxvi module to save employee data, reusing lab one code. It covers writing and reading a nested, multi-dimensional employee list with name and extension updates.
Learn how to use Python's pickle module to serialize objects to binary files and reconstruct them with load, comparing binary and text file handling for lists and other objects.
Lab 3 of the employee management program 6.0 builds on lab 2 by using pickle to write and read a binary file of employees, loading and managing the list.
Master Python file io by managing directories and paths with the os module, performing create, rename, and remove operations, and retrieving the current working directory and listing contents.
It's not often that you get to use a language as powerful and as versatile as Python. Python is a great language for writing web applications, cross-platform desktop applications, Artificial Intelligence software, shell scripts, perform scientific computation, and even create home automation software. To master these skills, you'll need a solid understanding of the Python language. In this course, Programming with Python, you'll start by learning the fundamentals of the language before venturing out to learn more advanced concepts like working with functions, modules, strings, numbers, dates and times, data structures, control statements, and much more. When you are finished with this course, you'll have a solid foundation to go out and build your own applications using Python.