X444.3 Computer Science (2)
Python is an Internet and systems programming language that is
rapidly gaining worldwide popularity in today's fast-paced software
development environment. Although initially known for building Web
and common gateway interface (CGI) applications, Python is also
known for the rapid prototyping of networking, database, XML, and
graphic user interface (GUI) applications.
Python is interpreted, interactive and inherently object-oriented in
nature, featuring an easy-to-learn syntax that is clear and concise.
It combines the power of a compiled language with the simplicity, low
maintenance, portability and short development time of an interpreted
scripting language. In addition to the many versions of UNIX (e.g.,
Solaris, Linux, *BSD), you will find Python available on Win32, MacOS,
OS/2, Amiga, AS/400, and even Palm, PS2, plus many others.
in many situations, presents a viable and advantageous alternative
because of its ease-of-use, rapid development time, and that it does
not discourage group collaboration. Python is also used in place of
or in addition to many common network and system administration tasks
typically written in UNIX shell languages.
Python is also available in a Java-compiled interpreter called
Jython which runs anywhere
a Java Virtual Machine (JVM) is available and provides access to Java
class libraries, thus giving Java a scripting language development
environment! Python classes can interact with Java classes and vice
versa, making Jython a powerful tool in Java development. Most of the
material covered in this class is applicable in a Jython environment.
This course provides a complete introduction to the Python language
covering the following topics:
Syntax and Style
Development and Run-time Environments
Objects and the Python Memory Model
Data Types and Operators
Files and Input/Output
Errors and Exception Handling
Functions and Functional Programming
Modules and Packages
OOP, Classes, Methods, Instances
Students completing this class should have a good working knowledge of the core Python language, be able to design and create Python objects, classes and modules, as well as have the ability to build a variety of tools and applications.
PREREQUISITE: Development experience in another high-level programming or systems integration language. A background in Unix/C development or object-oriented programming may be helpful but are not required.
Python Programming, Wesley J. Chun, Prentice Hall, © 2001.
Additional reading such as the Python Tutorial and Python Library
Reference are available from the Python website below.
REQUIRED SOFTWARE: A Python interpreter is required for this course. Students can obtain this software from the Python language website below or via an alternative software distribution such as the CD-ROM in the textbook or from the Jython website. Any Python platform can be used to complete assignments.