..  Copyright (C)  Brad Miller, David Ranum, Jeffrey Elkner, Peter Wentworth, Allen B. Downey, Chris
    Meyers, and Dario Mitchell.  Permission is granted to copy, distribute
    and/or modify this document under the terms of the GNU Free Documentation
    License, Version 1.3 or any later version published by the Free Software
    Foundation; with Invariant Sections being Forward, Prefaces, and
    Contributor List, no Front-Cover Texts, and no Back-Cover Texts.  A copy of
    the license is included in the section entitled "GNU Free Documentation
    License".

.. qnum::
   :prefix: modules-1-
   :start: 1

Introduction to Python Modules
------------------------------

One of the best things about the Python programming language is the ecosystem that surrounds it.  This chapter introduces you to some of the amazing packages that allow you to solve real world problems without starting from scratch.

.. image:: https://imgs.xkcd.com/comics/python.png

As you may have gathered, Python provides us the ability to use modules to do everything from sending emails to image processing to complex machine learning.  But, even though Python gives us a tremendous amount of power from these modules you still need to know the python basics in order to glue everything together.  We will start by looking at a module used to generate random numbers to learn how to make use of other modules in your programs.

Learning Goals
==============

* Understand that Python is extensible through modules

Objectives
==========

* To import an entire module
* To import a single function from a module
* To import a module giving it an alias
