Python/C4/Using-python-modules/English
Visual Cue | Narration |
---|---|
Show Slide 1
Containing title, name of the production team along with the logo of MHRD |
Hello Friends and Welcome to the spoken tutorial on 'Using Python Modules'. |
Show Slide 2
Learning objectives |
At the end of this tutorial, you will be able to ,
|
Show Slide 3
Pre-requisite slide |
Before beginning this tutorial,we would suggest you to complete the tutorial on "Using plot interactively", "Embellishing a plot" and "Saving plots". |
Show Slide 4
On running python scripts from command line |
|
Let us create a simple python script to print hello world. Open your text editor and type the following, | |
Open the text editor and type the following
print "Hello world!" print |
|
Save the script as hello.py | Now save this script as hello.py, |
Open the terminal
ipython |
Start the ipython interpreter |
%run -i hello.py | In the previous tutorials,we have seen how to run a script using the IPython interpreter using %run |
Close the terminal | but this is not the correct way of running a python script. |
Open terminal and navigate to directory where hello.py was saved | The correct method is to run it using the Python interpreter. Open the terminal and navigate to the directory where hello.py is, |
python hello.py | now run the Python script as, |
It executed the script and we got the output Hello World!. | |
Show Slide 5
Highlight python filename syntax on slide while narrating |
The syntax is python space filename. |
Show Slide 6
Four plot problem |
Now, we have a four plot problem where we have plotted four plots in a single figure. Let us run that script from command line. |
Open the four_plot.py file in text editor and show Pause for some time and then continue | If you don't have the script, then make one with the following set of commands |
python four_plot.py | Now let us run four_plot.py as a python script. |
Oops! even though it was supposed to work, it didn't. It gave an error linspace() is not defined, which means that the function linspace() is not available in the current name-space.
But if you try to run the same script using %run -i four_plot.py in your IPython interpreter started with the option -pylab it will work, because the -pylab option does some work for us by importing the required modules to our name-space when ipython interpreter starts. And thus we don't have to explicitly import modules. So now let us try to fix the problem and run the script in command line, | |
Show Slide 7
fix linspace problem |
add this line as the first line in the script, |
Add the line as first line in four_plot.py and save
from scipy import * |
|
python four_plot.py | Now let us run the script again, |
Now it gave another error -- plot not defined, | |
Show Slide 8
|
let us edit the file again and add this line as the second line in our script and save it, |
add the line as second line in four_plot.py and save
from pylab import * |
|
Switch to the terminal
python four_plot.py |
And now, run the script, |
Yes! it worked. So what did we do?
We actually imported the required modules using the keyword import. It could also be done as by using, | |
Show Slide 9
Better way of fixing highlight the required line while narrating |
from scipy import linspace
instead of, from scipy import * So in practice it is always good to use function names instead of asterisk or star. If we use asterisk to import from a particular module then it will replace any existing functions with the same name in our name-space. |
Show Slide 10
Instead of * |
So let us modify four_plot.py as, Hence we delete the first two lines of our code which we had added and add these lines |
Switch to script 'four_plot.py' delete the first two lines and add the following
from scipy import linspace, pi, sin from pylab import plot, legend, annotate from pylab import xlim, ylim, title, show |
|
python four_plot.py | Now let us try running the code again as, |
It works! In this method we actually imported the functions to the current name-space. There is one more way of doing it. And that is, | |
Show Slide 11
'another fix' highlight the required line while narrating |
Notice that we use scipy.pi instead of just pi as in the previous method, and the functions are called as pylab.plot() and pylab.annotate() and not as plot() and annotate().
Pause the video here, try out the following exercise and resume the video. |
Show Slide 12
Assignment 1 |
Write a script to plot a sine wave from minus two pi to two pi. <Pause> It can solved as, |
Open sine.py and show it | The first line we import the required functions linspace() , sin() and constant pi from the module scipy. The second and third line we import the functions plot(), legend(), show(), title(), xlabel() and ylabel(). And the rest the code to generate the plot. |
Pause for sometime and then continue | |
Switch to the terminal
python sine.py |
We can run it as, |
As we can see, we our sine plot. Let us move further in our topic. | |
Show Slide 13
What is a module? |
Until now we have been learning about importing modules, now what is a module?
A module is simply a file containing Python definitions and statements. Definitions from a module can be imported into other modules or into the main module. |
Show Slide 14
Python standard library |
Python has a very rich standard library of modules. It is very extensive, offering a wide range of facilities. Some of the standard modules are,
for Math: math, random for Internet access: urllib2, smtplib for System, Command line arguments: sys for Operating system interface: os for regular expressions: re for compression: gzip, zipfile, tarfile And there are lot more. Find more information at Python Library reference, http://docs.python.org/library/ There are a lot of other modules like pylab, scipy, Mayavi, etc which are not part of the standard python library. |
Show Slide 15
Summary |
This brings us to the end of this tutorial. In this tutorial, we have learnt to,
|
Show Slide 16
Self assessment questions slide |
Here are some self assessment questions for you to solve
|
Show Slide 17
Solution of self assessment questions on slide |
And the answers,
|
Show Slide 18
Acknowledgment slide |
Hope you have enjoyed this tutorial and found it useful. Thank you! |