UMBC Training Centers logo

Introduction to Python Programming

 

Course Description | Outline | Software Development Training | IT Training

Course Outline

Module 1 - An Introduction to Computers, Programming and Python

  • Different kinds of programming languages
  • What is Python
  • Introduction to interactive Python
  • Inside a Python program

Module 2 - Writing Simple Python Programs

  • The software development process
  • Variable names
  • Introduction to numbers and arithmetic operations
  • String literals
  • Output statements
  • Input statements
  • Simple assignment statements
  • Simultaneous assignment statements
  • Looping with for-loops and ranges

Module 3 - Computing with Numbers

  • Numeric data types
  • Arithmetic operations
  • Using the math library
  • Limitations of computer arithmetic
  • Type conversion and rounding

Module 4 - Objects and Graphics

  • Introduction to Graphics and Tkinter
  • Introduction to objects
  • Simple graphics programming
  • Using graphical objects
  • Graphics programming case study
  • Interactive Graphics - mouse clicks and text input

Module 5 - Sequences: Strings, Lists and Files

  • Introduction to the string data type
  • String indexing and slicing
  • Simple string processing
  • Regular expressions
  • String processing using regular expressions
  • Lists as sequences
  • Simple list operations
  • Internal string representation
  • String methods
  • List methods
  • Input and output with strings
  • Introduction to file processing
  • Opening and closing a file
  • Reading and writing files

Module 6 - Functions

  • Introduction to functions
  • Why use functions
  • Program example using functions
  • Passing arguments to functions
  • Functions that return a value
  • Functions that modify parameters
  • Functions for modularity

Module 7 - Flow Control and Conditional Expressions

  • Boolean conditions
  • if, if-else and if-elif-else statements
  • Introduction to errors and exception handling
  • Try and except statements
  • Case study in program design using control flow

Module 8 - Loops and Compound Booleans

  • Looping with for-loops
  • Looping with while-loops
  • Common loop patterns
  • Nested Loops
  • Boolean Operators
  • Looping with repeat-until loops
  • Endless loops and the break statement
  • Boolean Expressions and short circuits

Module 9 - Designing a Simulation

  • Analysis and Specification
  • Introduction to top-down design
  • The step-wise refinement process
  • Introduction to bottom-up implementation
  • Unit testing

Module 10 - Defining Classes

  • Review of objects
  • Designing a sample program with object-oriented design
  • Class method definitions
  • Using the self parameter with class methods
  • Implementing the sample program with OOP
  • Encapsulation and Abstractions
  • Defining classes in modules
  • Working with multiple modules
  • Using objects in graphical user interfaces (GUI)

Module 11 - Advanced Features

  • Using linear search with an array
  • Using binary search with an array
  • Comparison of the search algorithms
  • Recursive problem solving
  • Examples of recursive definitions
  • Writing and using recursive functions
  • Recursion vs. iteration
  • Sorting an array with selection sort
  • Sorting an array with merge sort
  • Comparison of sort algorithms

Module 12 - Web-Based Applications

  • Creating dynamically rendered response pages
  • Storing persistent data
  • Using view functions
  • Overview of selected web frameworks