sign up for our newsletter

Course Objectives

Students completing this class should be able to take their existing knowledge of Python and be able to branch it out into a variety of areas of programming. Depending on the topics cover, these could include being able to use regular expressions to perform complex pattern matching, developing graphical user interfaces and associated callbacks, be able to create or communicate with Win32 applications, being able to write an extension in C, and do a little bit of Internet and Web programming. Using this knowledge, students will hone their ability to build a variety of more serious tools and applications.

‹‹ Back to class list

Classes

Advanced: Python Applications Programming

This follow-on course to Comprehensive Intro + Intermediate Python introduces developers to a variety of advanced topics in Python programming, including those features new to more recent versions of Python. Every day, we will discuss and interact while covering several topics from the list below. Unlike the more structured intro course however, this course is more flexible and informal. Attendees democratically choose from the topics below, and the course will be custom-designed to teach the topics in most desired order. We will many of the topics listed below, as many as time will permit.

  • Unicode and ASCII Strings
  • Iterators and Generators
  • Execution Environment
  • Persistent Storage
  • Operating System Interface
  • Advanced Object-Oriented Programming
  • Using Regular Expressions in Python
  • Network Programming with Sockets
  • Internet Client Programming
  • Multithreaded Programming
  • GUI Programming
  • Web Programming
  • Database Programming
  • Extending Python with C
  • Text Processing (XML, JSON)
  • Web Services/APIs

Prerequisite
Completion of "Intro+Intermediate Python" (or its equivalent in experience or coursework); a background in Unix/C development or network programming may be helpful but not required.

Additional reading such as the Python Library Reference are available from the Python website.

Required Software
A Python interpreter is required for this course. Any Python interpreter will do, from the standard C version to one of the various implementations described above. Other software may be required for certain specific topics, i.e., a Win32 system for the Win32/COM topic, a Java interpreter for Java/Jython, a RDBMS for the DB/SQL topic, etc.

Required Hardware
A laptop/notebook or otherwise portable computer is required for the course exercises. Attendees may use any platform where Python is available. Bring your power cord! A network or wireless card is optional but useful in case you wish to connect to the Internet from your hotel/room.

‹‹ Back to class list