Home > Store

Python Programming with the Java? Class Libraries: A Tutorial for Building Web and Enterprise Applications with Jython

Register your product to gain access to bonus material or receive a coupon.

Python Programming with the Java? Class Libraries: A Tutorial for Building Web and Enterprise Applications with Jython


  • Sorry, this book is no longer in print.
Not for Sale


  • Copyright 2003
  • Dimensions: 7-3/8" x 9-1/4"
  • Edition: 1st
  • Book
  • ISBN-10: 0-201-61616-5
  • ISBN-13: 978-0-201-61616-3

Characterized by ease of use, richness of expression, and concise syntax, Python has remained a premier programming language for more than a decade, and is used by novices and professionals alike. In particular, its close relationship to Java™ makes the two languages, when used in combination, ideal for Web and distributed enterprise application development.

This tutorial begins with coverage of some of the basics of Python programming. Using plenty of skill-building exercises and interactive programming sessions, this book will help those new to programming develop an understanding of concepts and practical techniques. For experienced programmers, the book demonstrates Python's breadth of capabilities and shows the ways that Python interfaces with Java APIs for professional application development.

Python Programming with the Java™ Class Libraries: A Tutorial for Building Web and Enterprise Applications with Jython covers important topics such as:

  • Fundamental programming concepts, including statements, expressions, interpreters, and compilers
  • Python basics, including operators, string formatting, namespaces, classes, errors, and exceptions
  • Object-oriented programming concepts
  • File input/output
  • Python's intrinsic functions
  • Formatting, parsing, and manipulating strings
  • Interfacing with the Java APIs and working with Java Streams
  • Using Python and Java Swing to create GUIs
  • Working with SQL and JDBC™
  • Python and Java applets

In addition, the book contains instructions for downloading and installing the Python language and the Java Development Kit (JDK). Terminology, definitions, explanations, and numerous code samples make this book a useful learning experience.

Whether you are a sophisticated computer user new to programming or a serious application developer, Python Programming with the Java™ Class Libraries will give you insight into the power of Python and the know-how to put it to work.



Source Code

Source Code and Online Resources

source code

Sample Content

Online Sample Chapter

Operators and String Formatting in Python

Downloadable Sample Chapter

Click below for Sample Chapter(s) related to this title:
Sample Chapter 3

Table of Contents

(NOTE: Each chapter concludes with a Summary.)
1. Jython Overview.
Programming, Briefly.
Learning Python First.
Python the Language.
Starting with Python.
Basic Functions with Python.
Python as a Main Program.
The Fast Track.
The Power of Python.
Where Do You Go from Here?

2. Statements and Expressions.
Comments and Document Strings.
Data Types.
Python Collection Types.
Advanced Topic: Determining Types at Runtime.

3. Operators and String Formatting.
Formatting Strings—Modulus.

4. Control Flow.
The if Statement.
The while Statement.
The for Statement.
Putting It All Together.

5. Organizing Your Code.
Evolution of a Programmer.
Code Blocks and Namespaces.
Functions and Methods.
Putting Things Together.
Globals and the Global Statement.

6. Object-Oriented Programming.
What Is OOP?
Objects and Classes.
Special Class Methods.

7. Errors and Exceptions.
Syntax and Sequence Errors.
The Danger of Exceptions.
The try Statement.
The raise Statement.
Classes and Instances as Exceptions.
Getting the Most Out of Your Exceptions.

8. Working with Files.
Simple File Operations.
Common File Methods.
Putting It All Together: The Address Book Example.
The Full address3.py Code.
Persisting Objects with pickle.
pickle and the Address Book Application.

9. Built-In Functions.
Namespace: dir(), globals(), locals(), vars().
Type Checking: callable(), type().
Advanced Topic: Functional Programming.
Advanced exec and eval.

10. Working with Strings.
Conversion: atoi(), atof(), atol().
Case Change: capitalize(), capwords(), swapcases(), lower(),upper().
Finding: find(), rfind(), index(), rindex(), count(), replace().
Splitting and Joining: split(), splitfields(), join(), joinfields().
Stripping and Parsing: lstrip(), rstrip(), strip().
Adjusting Text: ljust(), rjust(), center(), zfill(), expandtabs().

11. Interfacing with Java.
Using the Java APIs.
Java Types.
Java Constructors.
Java Arrays and jarray.
Java Arrays and Methods.
Bean Properties.
Java Event Handling.
Subclassing Java Classes.
Advanced Topics.

12. Working with Java Streams.
The Java Way of File Operations.
Text Streams.
Binary Streams: InputStream and OutputStream.
DataInput and DataOutput.
The File Class.
The RandomAccessFile Class.
The StreamTokenizer Class.
Persisting Objects with Java Streams.
Using Java Streams to Work with Memory.

13. JFC Fundamentals.
Components and Containers.
Handling Events with JFrame.
The Python Way of Handling Events.
The Class Hierarchy for JFrame and Frame.
List and Jlist.

14. First Swing Application, Layout, and Menu.
Putting Things Together with Basic Java GUIs.
Adding an Input Form for an Address Entry: The Prototype.
Adding an Input Form for an Address Entry: First Cut.
Adding a Main Window for the Address Book Application: Prototype.
Adding a Main Window: First Cut.
Adding a Toolbar and a Dialog for the Address Book Application.
Layout Managers.
A GridBagLayout Example.
Putting Things Together: Adding GridBagLayout to the Address Application.

15. Graphics and Events.
A Quick Graphics Tour.
A Quick Tour of Common Events.
Putting Things Together: A Drawing Program.
The Complete Shapes and DrawShapes Modules.

16. Advanced Swing.
Working with Table Models.
Putting Things Together—Adding a Table Model to the Address Book Application.
JToolBar and Actions.

17. SQL and JDBC.
A Quick and Dirty JDBC Session.
Programming with JDBC and SQL.
SQL Data Definition Language.
SQL Data Manipulation Language.
Putting It All Together—Adding Database Support to the Address Book Application.

18. Applets.
What Are Applets?
Working with Applets.
Using an Applet as a Container.
Transforming the Address Book Application into an Applet.
Advanced Topic: AppletContext and AppletStub.

Appendix A: Installing Jython on Windows.
Installing Java Runtime.
Installing the J2SE—Step by Step.
Installing Jython.

Appendix B: Installing Jython on Linux by Jaysen Lorenzen.
Unpacking the Blackdown Package.
Unpacking the Sun Package.
Installing the Sun and Blackdown Distributions.
Installing Older Distributions.
Running Jython.

Appendix C: The Power of Scripting.
Scripting Versus Programming Languages.
Java and Scripting.
Integrating Scripting with Jython.
Which Scripting Language to Choose.
Hello World—The Programming Rosetta Stone.
What Does It All Mean?

Appendix D: Java and Python: A Comparison.
Python 101.
A GUI Application.
A Statistics Application.
A String Parsing Example.
Embedding Jython in Java.

Appendix E: Regular Expressions by Jaysen Lorenzen.
A Simple Example.
Pattern Characteristics.
Regular Expression Functions and Error and Flags Properties.
re Object Methods and Properties.
match Object Methods and Properties.
Putting Things Together by Rick Hightower.

Index. 0201616165T06242002


Python is a dynamic programming language with the power of well-known languages such as Java, C++, and Smalltalk, but is leaner and meaner than any of them. Even so, Python is very expressive--it doesn't talk much, but it has a lot to say.

Python has another plus: It has the simplicity of languages such as VB Script or Java Script, which makes it easy for beginning programmers to learn. Those who know their way around a computer can pick it up quickly, particularly if they have ever created a spreadsheet that graphs and organizes data, written spreadsheet formulas, or created a Web page. For those who have, say, written macros or batchfiles, or programmed in any language, using Python will be a breeze.

A Very Short History

Python was derived from a language called ABC, which was co-created by Guido van Rossum in the early 1980s. The hope was that ABCs designed-in ease of use would become popular as a way to get up to programming speed quickly and painlessly. This hope didnt pan out, so van Rossum began a new project, Python, which debuted in 1990. He didnt forget ABC; in fact, there is a lot of ABC in Pythons concise syntax and elegant expression, as well as its ease of use. The formula workedit succeeded where ABC failedand Python has stood the test of time.

What You Will Learn

Put simply, this books goal is to teach programming using Python. You will learn the workings of Python and how to apply them, particularly for the following:

  • AWT and Swing application development
  • Java applet development
  • Internet programming
  • Regular expressions and pattern matching

You may not understand these concepts now, but thats the point. You will by the end of the book.

If youre looking for a full language reference you wont find it here. What you will get is enough knowledge about Python to get started with programming on your own. The book will remind you often that the best way to learn programming is by doing it. Thats why there are a lot of hands-on exercises in the form of interactive programming sessions, which you can follow along with at the keyboard as you read.

Each chapter begins with a list of terms that are explained and/or used throughout the chapters and book. These are set in bold on their first mention.

The Books Audience

As a reader of this book, you may be (1) a nonprogrammer who wants to learn a programming language, or (2) a programmer who wants to learn Python. For simplicity, both are referred to as novices. However, it is assumed that you know your computer and how to use it to get the job done.

If youre not a member of the novice group, then youre probably an experienced programmer who is reading this book to learn a quicker and more powerful, higher-level language. For simplicity, this group is referred to as programmers.

  • For Novices--You will be introduced to Python in conversational English, with many step-by-step examples. Chapters 2 through 9 build progressively on the chapters preceding them, so you should be able to learn enough to begin writing useful Python programs. The goal is to give you as much of a headstart as possible. From Chapter 10 on, the books goal is to teach you more about Python and about supporting Java and Python libraries on your own, as well as about Internet programming with Python.
  • For Programmers--If youre an experienced Java programmer, you are aware of the close relationship between Java and Python and how it can lead to better application development (see Chapter 1). You can skip over or skim the basic material and concentrate on the chapters Advanced Topic sections and the various screened asides, which are geared to your level of understanding.

Now lets get into the tour of Python--the destination is worth the trip.



Click below to download the Index file related to this title:


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership