Python Bibliotheca
Python resources for teachers and students.
     Teaching Tools
>>> Python Books for Beginners
>>> Python Tutorials for Beginners
>>> Practice Problems
>>> Programming Tips

>>> Introducing Python

>>> Python for Fun
>>> GASP Python Course
>>> Learning Zope 3

>>> Schools
>>> Contributors

     Other Cool Stuff
>>> Poetry

>>> Instant Hacking

Who teaches Python?

Alberni District Secondary School
4000 Burde Street
Port Alberni, BC
Instructor: I. Thomas

ADSS started teaching Python in September 1999. The year before, 1998/1999, was as the yearbook said The year of Zope. The school fell in love with Zope as tool for building websites. It was a natural progression to teaching Python to beginning programmers. Zope is use in two course taught at our school Computer Science 11 and Information Technology 12.

The Blake School
511 Kenwood Parkway
Minneapolis, MN 55403
Instructor: Christopher Smith

The Blake School offered its first introductory computer science course in 2001. The course assumes no previous programming experience. The Python language was chosen because it has clear syntax, includes high level operations, and is readily available without fee for a wide variety of operating systems. We hope to offer more advanced courses and believe that Python will help lay a solid foundation for continued study.

Canterbury School
3210 Smith Road
Fort Wayne, IN
Instructors: Mr. Nathan Yergler (both courses) & Dr. Vern Ceder (MayTerm)
( &

Course: Python Programming

Python is an interpreted language designed for simplicity, clarity and elegance. This course will introduce students to computer programming using Python. Topics covered will include console applications, object oriented programming, graphical applications and network programming, finishing with some exercises in game programming using PyGame.

Course: MayTerm PyGame

This course will provide a brief introduction to the Python programming language and how to program simple games using it. Python is an object-oriented, loosely-typed language well suited to rapid prototyping and development. The course will cover using the Simple Direct Media Player and the pyGame libraries for game graphics and sound. By the end of the course students will have the tools necessary to construct strategy, board and simple 2D shooting games. Previous programming experience required.

Centre College
600 West Walnut Street
Danville, Kentucky 40422
(859) 238-5200
Instructor: Dr. Christine Shannon

Course: Introduction to Computer Science

Gimnasio Fidel Cano
Calle 35 # 79 A 05
Bogotá, Colombia
(57 1) 2636875
Instructor: Igor Támara

Curso: Software para todos

EL valor que fundamenta este proyecto es la colaboración, la colaboración se ve reflejada en la exposición de material generado por los estudiantes, fruto de la experiencia con tecnología de punta. Las herramientas que puedan generar se espera que puedan ser empleadas por otros para compartir experiencias. Es deseable poder desarrollar herramientas y contenidos que beneficien a la comunidad educativa y que sean una fuente de satisfacción para los autores

Experiencias como el software libre son las que inspiran este valor, transformamos lo que otros hacen de acuerdo a nuestros sentimientos. Si cada estudiante comparte con los demas su trabajo, puede además emplear el trabajo de otros, y apropiarlo para construir cada vez más rápido y extender las soluciones a problemas de mayor envergadura.

El área de Sistemas y Computación se divide en Programación y aplicación, tienen su bibliografía propia, sugerida por el orientador. Además se pueden encontrar textos digitales en Internet que dan explicaciones de distintas formas a los mismos temas.

The Henry Samueli School of Engineering
444F Engineering Tower
Irvine, CA 92697-2625 USA
Instructor: Pai H. Chou, Assistant Professor of ECE (

Course: Design and Analysis of Algorithms [ Fall 2001 ECE 235 | Fall 2000 ECE 235 ]

This graduate level course is taken by first-year electrical and computer engineering graduate students. The analysis part covers correctness proof, complexity analysis, etc, while the design part involves understanding existing algorithms and extending or applying them to new problems. We started including Python programming as homework assignments in Fall quarter 2000. We consider Python to be an algorithm-oriented language. It provides a syntax very similar to that of the textbook, and more importantly, it provides a rich set of data structures that can express aggregate data structures such as graphs and flow networks without having to define classes. This enables students to focus on algorithm design, rather than struggling with data structure design and inventing new mini-languages.

Course: ECE 12: Introduction to Programming

Starting Fall quarter 2002, we will be changing introduction to programming for computer engineering majors from C to Python. It will be an attempt to give students a solid introduction to fundamental concepts in programming and to develop their problem-solving skills with a modern computer language and libraries. This will also give students more compelling course projects.

Henry Sibley High School
W. St. Paul, MN
Instructor: Tim Wilson

Course: Introduction to Computer Programming

Although the particular programming language used is largely irrelevant to the goal of learning the basics of programming, we'll be using Python. Python offers clear syntax, easy access to functional and object-oriented programming styles, and runs on everything from a monster Unix server, a desktop PC running Windows, to a Palm Pilot PDA. Python is a very popular language in the in Web development circles, the scientific community, and the world of 3D graphics and animation.

Lane Community College
4000 East 30th Avenue
Eugene, Oregon 97405 USA
(541) 747-4501
Instructor: Chris Meyers

Lane Community College serves students in and around Eugene Oregon. The class "Programming for Fun" which introduces Python was offered through the continuing education department for the first time in the summer of 2001 and attracted 15 students of all ages, from 16 to 66.

Margolin Hebrew Academy
390 South White Station
Memphis, TN 38117
(901) 682-2409
Instructor: Bryce Embry

Course: Python Course

MHA/FYOS offered its first course in Python during the 2001-2002 school year. The class includes students in grades 9 - 12 and is currently our only programming course. As a first step in introducing students to the wonderful world of bossing around your computer, Python has been a wonderful tool. And for a neophyte programming teacher, the clarity of Python has been a blessing.

Universidad del Valle de Guatemala
18 Avenida 11-95, Zona 15, Vista Hermosa III
Guatemala, Guatemala
(502)-2364 0336 / 40, 2364 0492 / 7
Extensiones 464 y 465

Curso: Fundamentos de Programación

Este curso está diseñado para iniciar a los estudiantes en la aplicación de algoritmos utilizando algún lenguaje de programación por procedimientos. Pretende unificar criterios sobr computación, orientado a ingenieros y científicos. Tiene como propósito profundizar en el análisis y diseño de programa estructurados, para llegar a la implementación y depuración de los mismos.

University of Pittsburgh
CLSI 5807-MT, 200 Lothrop Street
Pittsburgh, PA 15213-2582
(412) 647-5529
Instructor: James H. Harrison, Jr., MD, PhD

Course: Problem-Oriented Programming

This course is an experiment that attempts to provide skills with a software toolset that will remain useful in the long term, to use this toolset to teach the programming concepts that are most important for graduate students in medical informatics and to save time in the curriculum while doing so. It is designed to teach rapidly a high-level, byte-code-interpreted programming language--Python--which is platform-independent and has a reputation for clear syntax, easy code maintainability, friendliness and rapid progress for beginners, and depth for professionals. The language is introduced quickly in the first half of the semester, and the second half is dedicated to a series of problems in object oriented programming, data structures, database access, Web communications, GUI development, etc., that illustrate real-world applications of programming.

Yorktown High School
5201 N. 28th Street
Arlington, VA 22207
Instructor: Jeff Elkner

Yorktown is now in its seventh year using Python as the language of instruction in our first year computer science courses. The students love it and we really don't know how we managed before Python ;-) Guido van Rossum made annual visits to our school while he lived in the DC area, and the whole Python community has been tremendously supportive!

An additional list of schools using Python can be found here.

[ Copyright 2009, Jeffrey Elkner ]

Comments, questions, or suggestions? Email the webmaster