Book Image

Python Fundamentals

By : Ryan Marvin, Mark Nganga, Amos Omondi
Book Image

Python Fundamentals

By: Ryan Marvin, Mark Nganga, Amos Omondi

Overview of this book

After a brief history of Python and key differences between Python 2 and Python 3, you'll understand how Python has been used in applications such as YouTube and Google App Engine. As you work with the language, you'll learn about control statements, delve into controlling program flow and gradually work on more structured programs via functions. As you settle into the Python ecosystem, you'll learn about data structures and study ways to correctly store and represent information. By working through specific examples, you'll learn how Python implements object-oriented programming (OOP) concepts of abstraction, encapsulation of data, inheritance, and polymorphism. You'll be given an overview of how imports, modules, and packages work in Python, how you can handle errors to prevent apps from crashing, as well as file manipulation. By the end of this book, you'll have built up an impressive portfolio of projects and armed yourself with the skills you need to tackle Python projects in the real world.
Table of Contents (12 chapters)
Python Fundamentals
Preface

Handling Errors and Exceptions


Handling errors and exceptions starts long before you get to running your code. Right from the planning phase, you should have contingencies in place to avoid running into errors, especially logical errors that may be harder to catch in some cases.

Practices such as defensive programming can help mitigate future errors in some cases.

According to Wikipedia:

"Defensive programming is a form of defensive design intended to ensure the continuing function of a piece of software under unforeseen circumstances. Defensive programming practices are often used where high availability, safety, or security is needed."

Defensive programming is an approach that's used to improve software and source code, in terms of the following:

  • General quality—by reducing the number of software bugs and problems.

  • Making the source code comprehensible—the source code should be readable and understandable, so that it is approved in a code audit.

  • Making the software behave in a predictable manner...