Book Description
Guido van Rossum created the Python programming language in the late 1980s. In contrast to other popular languages such as C, C++ , Java, and C#, Python strives to provide a simple but powerful syntax.
Python is used for software development at companies and organizations such as Google, Yahoo, Facebook, CERN, Industrial Light and Magic, and NASA. Experienced programmers can accomplish great things with Python, but Python's beauty is that it is accessible to beginning programmers and allows them to tackle interesting problems more quickly than many other, more complex languages that have a steeper learning curve.
In late 2008, Python 3.0 was released. Commonly called Python 3, the current version of Python is incompatible with earlier versions of the language. Currently the Python world still is in transition between Python 2 and Python 3. Many existing published books cover Python 2, but more Python 3 resources now are becoming widely available. The code in this book is based on Python 3.
This book does not attempt to cover all the facets of the Python programming language. Experienced programmers should look elsewhere for books that cover Python in much more detail. The focus here is on introducing programming techniques and developing good habits. To that end, our approach avoids some of the more esoteric features of Python and concentrates on the programming basics that transfer directly to other imperative programming languages such as Java, C#, and C++ . We stick with the basics and explore more advanced features of Python only when necessary to handle the problem at hand.
This open book is licensed under a Creative Commons License (CC BY). You can download Fundamentals of Python Programming ebook for free in PDF format (13.1 MB).
Table of Contents
Chapter 1
The Context of Software Development
Chapter 2
Values and Variables
Chapter 3
Expressions and Arithmetic
Chapter 4
Conditional Execution
Chapter 5
Iteration
Chapter 6
Using Functions
Chapter 7
Writing Functions
Chapter 8
More on Functions
Chapter 9
Objects
Chapter 10
Lists
Chapter 11
Tuples, Dictionaries, and Sets
Chapter 12
Handling Exceptions
Chapter 13
Custom Types
Chapter 14
Class Design: Composition and Inheritance
Chapter 15
Algorithm Quality
Chapter 16
Representing Relationships with Graphs