Execeptions in Python: What they mean..

Errors arise even from a syntactically correct statement and The error that is detected during the execution of  a statement is called an exception. In python, there are  some, awesome error handling techniques but before it can be learnt, it is important to know the different types of errors that can occur.
Python has a wide range of built-in exceptions that are defined in the exceptions module. This module is implicitly imported while running python and it helps you to narrow down the type of error that has occurred.


Here is a sample screenshot of two errors:
error report

A traceback  is a module ,which  works  with the call stack and helps  producing errors. It acts as a stack trace to locate the error  causing line and reruns that line value.The last line of the exception messages  is the name of the built-in exception and a small description as to  what that error is and sometimes, tells which part of the statement is causing the error.

here are a few  built-in exceptions I have come across:

  1. ValueError : This error occurs generally  when the data to a built-in function or operation is not a correct value. This means that the error occurs when a value supplied is larger than the maximum value that can be processed or in some cases if the value is smaller than zero.
  2. ImportError : This error is raised when a module or  a library  that is not present is attempted to be imported into python. For example PIL is an imaging library in python and doesn’t come pre-installed with python3.2 . So if I try to import that  library I get an import error. When this error is raised,it doesn’t  always mean that the library or module isn’t there.It can simply mean that the module name might not be spelt correctly or the module isn’t installed yet.
  3. NameError : This is one of those errors that occur a large number of times. It is raised when there is an attempt to use a variable that has never been assigned a value.
  4. ZeroDivisionError : Basic mathematics tells us that a division by a zero is undefined. And when such an attempt is made, python raises this error. It can be due to directly specifying a division  with zero like : >>>10 * (15/0) 
    or  a result leading to a zero in the denominator Eg: >>> 10 *  45/(20-2 * 10)
  5. AttributeError : Tuples  in python are like lists but once created, they are immutable. And when there is an attempt to delete or add contents into it, this error is raised.
  6. KeyError: key is an unique entity of the dictionary data structure and also used to keep track of elements in a  set. This error is raised when a key mentioned in a dictionary is not present or an attempt is made to remove elements from a set.
  7. IOError : this is a common error during file handling. This occurs when we try to print something or try opening a file or perform  operations on file fails. The sources for these might be the file doesnt exist or the disk is full
  8. EOFError : This error is raised when a built-in function like input() reaches end-of-file before any input is given.

Other than these  ,There are a lot more and can be found on the python online documentation.
But as of now with this knowledge on errors, learning exception handling will be much easier.


akshay pai

I am a data science engineer and I love working on machine learning problems. I have experience in computer vision, OCR and NLP. I love writing and sharing my knowledge with others. This is why I created Source Dexter. Here I write about Python, Machine Learning, and Raspberry Pi the most. I also write about technology in general, books and topics related to science. I am also a freelance writer with over 3 years of writing high-quality, SEO optimized content for the web. I have written for startups, websites, and universities all across the globe. Get in Touch! We can discuss more.

Leave a Reply

%d bloggers like this: