Advanced Python
Prework and Introductory Review
Hello! This course in Advanced Python presumes familiarity with a specific set of practical skills. Although we will review and practice all of these concepts in the first two sessions (along with new material), it’s recommended that you spend some time (re-)familiarizing yourself with these skills before the class begins to ensure that you aren’t faced with too many new concepts as we get started.
Below you’ll find links to the material you can use to review these concepts. Start with the Advanced Python Course Slides, then review the Introduction to Python slides, or the Videos as you prefer. Finally, review the projects we’ll be building and see if you can begin work on them (projects will be due one week after the first class).
Advanced Python Course Slides: a succinct discussion
Original Intro to Python Course Slides: original presentation of the concepts in more detail
Videos: my original content videos discussing each topic
Projects: the projects we will be doing in our first week to demonstrate each skill (due one week after the first class)
The projects listed below will make up the first week’s homework assignments (due one week after the first class). Feel free to get started on them if you have time – there are several assignments in the first week and it could help for you to take a “first pass” at some of them.
File Parsing
The ability to loop through a file line-by-line, use ‘if’ to determine if a line is to be used, split out desired values, convert values to proper type, and summarize the result through a counting or summing variable.
Advanced Python Course Slides:
Original Intro to Python Slides:
Sequences: Strings, Lists and Files
Videos:
Projects:
File looping and counting (see Projects and Project Discussion)
Building Lists and Sets from a File, Using Them to Summarize Data
The ability to extend the above skill by adding values to a list or set object in order to be able to summarize using functions like sum() and len(), the in operator, and list slicing.
Advanced Python Course Slides:
Containers: Lists, Sets, Tuples, Dicts
Original Intro to Python Slides:
Containers: Lists, Sets and Tuples
Videos:
Summarizing Data with Lists and Sets
Projects:
File looping and collecting; building a set from a file (see Projects and Project Discussion)
Building a Lookup or Aggregating Dictionary from a File
The ability to create a simple dictionary of key/value pairs, or an “aggregating” dictionary that sums up or counts values associated with a unique key.
Advanced Python Course Slides:
Containers: Lists, Sets, Tuples, Dicts (repeat from above)
Original Intro to Python Slides:
Videos:
Projects:
Building a dict lookup from file; dict aggregation (see Projects and Project Discussion)
Writing Basic Function Definitions
The ability to write functions that can take argument(s) and/or return return value(s).
Advanced Python Course Slides:
Original Intro to Python Slides:
Introduction to User-Defined Functions
Videos:
Projects:
(above projects will be required to be written in functions)