Syllabus
- When: Session 1: November 6 - December 14, 2017
Session 2: January 16 - February 12, 2018
Session 3: February 13 - March 12, 2018 - Session: CPE Non-credit
- Meets: Online
- Instructor: David Wemhoener
- Email: dwemhoen@umass.edu
- CPE enrollment page
Summary: This course provides an introduction to scripting using Python. Concepts covered include basic string and arithmetic operations in Python as well as flow control, functions, and file manipulation operations. It is entirely self-directed and students can proceed through the material at their own pace. Students should have basic familiarity with computers, but no prior experience with programming is required.
Textbook: For this course we will make use of the online textbook Automate the Boring Stuff with Python. The text is freely available at www.automatetheboringstuff.com .
Other Requirements: For this course, we will use the PyCharm IDE and Python 3. A walkthrough is provided for both in Unit 1.
Grading: Although this is a non-credit course, there are end-of-unit assessments which provide grades as a way of giving you feedback on your progress. Since the goal of this course is mastery of the material, you may repeat these as many times as you wish.
Schedule
Unit 1: Setup
The first unit will focus on ensuring that everything on your computer is properly configured for the rest of the course.
Unit 2: Python Basics
In this unit, we will familiarize ourselves with the basic functionality of python. We will cover:
* Variable assignment
* Basic string operations
* How to perform basic mathematical operations
* Comments
Unit 3: Flow Control
In this unit, we will learn about flow control. Topics covered include:
* If then else statements
* For-loops
* While loops
* The range function
Unit 4: Functions
In this unit, we will learn about how to use and build our own functions. We will cover:
* Calling and defining functions
* Exception handling
* Importing in python
Unit 5: Lists
In this unit, we will learn about how to use and build our own functions. We will cover:
* Creating lists
* Modifying lists
* Iterating through lists
Unit 6: File Operations
In this unit, we will learn about how to manipulate files. We will cover:
* Examining and copying files
* Reading and writing text files
* Reading and writing csv files
Unit 7: Fizzbuzz
In this unit, we will learn how to handle a common employment interview challenge. We will cover:
* Modulo operator
* Fizzbuzz
* Command line arguments
Unit 8: Where to go from here
This final unit contains additional readings that build on the material in this course, but that are beyond it's scope. Everything in this section is optional, but these tasks may be of interest.