GIS 540

Schedule

  • This schedule may change during the semester. Refresh (F5) the page.

 

Day

Assigned reading In-class exercises Slides & Lectures Related links Quizzes

1
(08/22)

Ch 1: Introduction

Ch 2.1-2.3: Beginning Python

In class Intro to GIS540  Lecture
Intro to Python  Lecture
Napquest
-GP (10)
-Building Models (10)




2
(08/27)

Ch 2.4-2.5: Python components

Ch 3.1-3.3: Basic Data Types: Numbers and Strings

In class

Intro to Python  Lecture

Numbers_and_Strings
Lecture (part 1)

Numeric types
String methods

    HW1 Due 08/27
3
(08/29)

Ch 3.4-3.8 String Methods and printing strings

In class Numbers_and_Strings
Lecture (part 2)

 

 
4
(09/03)

Ch 4: Basic Data Types: Lists and Tuples

In class Lists, Tuples, & Sets Lecture

List methods
Tuples

 

    HW2 Due 09/03
5
(09/05)

Ch 5: ArcGIS and Python

Ch 6.1-6.4: Calling Tools with Arcpy

In class
Print:
arcpy cheatsheet
arcpyTools Lecture (Part1)

Essential arcpy vocabulary
Using tools & environment settings

 
(09/06)

Timed quiz----->

Q1: Ch 2-4 Quiz
6
(09/10)

Ch 6.5-6.11: Spatial Analyst, Additional tool tips

Ch 7: Getting User Input

 

 

arcpyTools Lecture (Part2)

Getting user input Lecture



Common pathname manipulations

 
7
(09/12)

Ch 8: Controlling Flow

In class
Print:
pseudocode practice
Controlling flow Lecture Pseudocode basics-M. Kelly
8
(09/17)
Ch 9.1-9.2, 9.4-9.5: Decision-Making (if,elif,..and, or, <=...) In class
Slides Lecture (Part1)   if statements
Describing data
    HW3 Due 09/17
9
(09/19)

Ch 9.3,9.6: Describing Data (arcpy.Describe)

Print: conditional sound exercise

In class

(2nd part of Decision making slides linked above)
Dec Making Lecture (Part2)


 

10
(09/24)

Ch 10: Repetition: Looping for Geoprocessing   Looping Slides
Looping Lecture
for statements and range function  
11
(09/26)
Ch 11.1-11.2, 11.4-11.5: Batch processing In class Slides Lectures (Part 1) Listing arcpy data  
(09/27) Timed quiz-----> Q2: Ch 8-10 Quiz
12
(10/01)

Section 11.3, 11.7: arcpy 'ListFields'

Section 11.6 Debugging example

In class Slides Lecture (Part 2) ListFields
Field objects
Stepping through with debugger
    HW4 Due 10/01
13
(10/03)
Ch 13: Debugging

In class

Demos

Slides Lecture PSU's debugging tutorial  


(10/08)

Exam review

Notes   slides  

Sample Midterm Exam A   Sample Midterm Exam A Solutions    

Sample Midterm Exam B   Sample Midterm Exam B Solutions

(10/10-10/11)


Fall Break (No class)

(10/14 & 10/15)

Midterm Exam (Topics in Book Chapters 1-11)
Location: testing center, Time limit: 2 hours, Format: paper, Materials: scratch paper, no notes.

14
(10/17)

Ch 12: Additional looping functions

In class Slides Lecture List comprehensions
Nested loops
Walking directory trees

HW5 Due 10/18
15
(10/22)

Ch 14: Error handling  

In class
Print:

errorh ex. (predictTry)
Slides Lecture

Exceptions and error handling

16
(10/24)

Ch 15: User-defined Functions

In class Slides Lecture Functions  
(10/25) Timed quiz-----> Q3: Ch 13-15 Quiz
17
(10/29)

Ch 17: Reading and writing with Cursors

In class Slides Lecture

Accessing data using cursors

    HW6 Due 10/29 (including project proposal)
18
(10/31)
Ch 18: Dictionaries
In class Slides Lecture

PT Dictionaries

19
(11/05)

Ch 19.1-19.2: Reading and Writing Text Files

In class Slides Lecture File objects and
Sturlow: File I/O (input/output)

 

20
(11/07)

Section 23.1: Creating a Script Tool

In class part 1

In class part 2

Slides Lecture

Slides Lecture Part 1

Script tools  
HW7 Due 11/08
21
(11/12)
Section 23.2: Creating a GUI In class

Slides Lecture Part 2

Adding script tools to ArcMap toolbars
Script tool properties

ToolValidator
(11/12) Timed quiz-----> Q4: Ch 17-19 Quiz

22
(11/14)

Ch 16: User-defined Modules

Ch 21: Classes

In class

In class
Print: Thinking OOP (slides)

Modules Slides (~15 min)
Modules Lecture

Classes Slides
Classes Lecture

Modules & Sthurlow Modules

Wiki, Sthurlow,
Python Tut., &
"ArcObjects" p1-4

 
23
(11/19)

Ch 24: Mapping Module

In class

Slides Lecture

Esri mapping module help
HW8 Due 11/19 (including extended proposal)
24
(11/21)

Ch 20.1: Working with HTML

In class

Slides Lecture

HTML tutorial

 

25
(11/26)
Ch 20.1.6, Ch 20.1.3: Parsing HTML and KML with BeautifulSoup In class

Slides1 Lecture

Slides2 Lecture

B. soup documentation

B. soup module

 
HW9 Due 11/26
26
(12/03)
Ch 20.2 Fetching and uncompressing data In class Slides Lecture  

27
(12/05)

Ch 23.4, ScriptTool ToolValidator

Ch 23.2.2.8, 23,3
Symbology & Progressor

In class part1

In class part2

Slides Lecture

Slides Lecture

   
(12/06) Timed quiz-----> Q5: Ch 16, 20, 21, 23, 24 Quiz
(12/09) Final Project Due by 10 p.m. EST
   

Project

Python style guide

 
(12/20) Grades posted by 11:59PM EST