
Explore a comprehensive introduction to Python, its history and uses, install and configure the interpreter, run hello world, compare implementations, and set up development with Atom or Eclipse.
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.
Install Atom and add Python support with script, magic Python, pep 8 auto indentation, and Python linter. Create sample.py, run with control-shift-B, and see hello world in the bottom console.
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.
Explore Python operators, including assignment, arithmetic, comparison, logical, membership, identity, and bitwise operators, with practical examples and how they modify variables and evaluate conditions.
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.
Cover conditional and looping statements in python, including if elif, nested if, and while and for loops with break and continue; apply in labs like fizz buzz.
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.
Master functions in Python by learning built-in and user defined functions, the def and lambda syntax, how to call, return, yield, and manage global and local scope.
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.
Define a main function in Python and guard its execution with if __name__ == '__main__' to run only as the main module, aiding safe imports and testing.
Define global and local scopes to control variable visibility across functions. Illustrate returning a local tax from a function and using a global variable with the global keyword.
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.
Explore working with strings in Python 3, including Unicode, string immutability, indexing and slicing with brackets, and built-in functions ord and len to obtain ordinal values and lengths.
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.
Learn how to join strings using Python's join method, comparing it with plus and plus-equals, and join a list into a delimited string such as pipe or space.
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 the Python math module to perform absolute values, powers, square roots, and rounding with functions like floor, ceil, pow, and fabs, plus min and max for lists.
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.
Import the date time classes and use their constructors to create date, time, and datetime objects, then print today's date and the current date time.
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.
Explore built-in list functions in Python, including min and max, and random module functions choice and shuffle, with practical examples of selecting and reshuffling list items.
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.
Explore dictionaries in Python, learning key-value pair structures stored in braces, accessed by keys rather than indices, with examples of string and numeric keys and printing to the console.
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.
Master a dictionary-based employee management program 3.0 in python, building a menu-driven lab that shows all employees and individual records, and supports add, edit, delete via a unified function.
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.
Learn to read CSV data by creating a CSV reader, iterating over rows, and printing name and extension, while customizing delimiters and quoting options with the reader and writer objects.
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.