added slides for getting-started-with-for.
--- a/getting-started-with-for/script.rst Tue Oct 12 00:25:54 2010 +0530
+++ b/getting-started-with-for/script.rst Tue Oct 12 13:02:39 2010 +0530
@@ -43,6 +43,11 @@
for indentation. Do that while typing so that they can
actually see what is being typed.
+As you can see in the slide, ``Block B`` is an inner block and it is
+indented using 4 spaces, and after ``Block B`` the next statement in
+``Block A`` starts from the same indentation level of other ``Block
+A`` statements.
+
Now let us move straight into ``for`` loop.
{{{ switch to next slide, problem statement of exercise 1 }}}
@@ -85,6 +90,8 @@
square_roots. It is only complicating stuff.
Simply iterate and print.
+{{{ switch to next slide, save and run script }}}
+
{{{ save the script }}}
Now save the script, and run it from your IPython interpreter. I
@@ -151,6 +158,8 @@
the list. And this time let us do it right in the IPython
interpreter.
+{{{ switch to next slide, Indentation in ``ipython`` }}}
+
{{{ switch focus to the IPython interpreter }}}
So let us start with making a list. Type the following
@@ -166,11 +175,14 @@
four dots tell you that you are inside a block. Now type the rest of
the ``for`` loop,
+{{{ switch to next slide, Indentation in ``ipython`` (cont'd) }}}
+
.. #[Nishanth]: Tell that IPython does auto indentation.
::
- print "Square root of", each, "is", sqrt(each)
+ print "Square root of", each,
+ print "is", sqrt(each)
Now we have finished the statements in the block, and still the
interpreter is showing four dots, which means you are still inside the
@@ -178,6 +190,8 @@
without entering anything else. It printed the square root of each
number in the list, and that is executed in a ``for`` loop.
+{{{ switch to next slide, Indentation in ``python`` interpreter }}}
+
Now, let us find the cube of all the numbers from one to ten. But this
time let us try it in the vanilla version of Python interpreter.
@@ -187,6 +201,9 @@
{{{ open the python interpreter in the terminal using the command
python to start the vanilla Python interpreter }}}
+{{{ switch to next slide, Indentation in ``python`` interpreter
+(cont'd) }}}
+
Start with,
::
@@ -214,6 +231,8 @@
Then say this list can also be generated using
the range function and hence introduce range.
+{{{ switch to the next slide, ``range()`` function }}}
+
Okay! so the main thing here we learned is how to use Python
interpreter and IPython interpreter to specify blocks. But while we
were generating the multiplication table we used something new,
@@ -225,12 +244,14 @@
.. #[Nishanth]: Show some examples of range without the step argument
May be give an exercise with negative numbers as arguments
-Now, let us print all the odd numbers from 1 to 50. Let us do it in
-our IPython interpreter for ease of use.
-
{{{ switch to next slide, problem statement of the next problem in
solved exercises }}}
+Now, let us print all the odd numbers from 1 to 50. Pause here and try
+to solve the problem yourself.
+
+Let us do it in our IPython interpreter for ease of use.
+
{{{ switch focus to ipython interpreter }}}
The problem can be solved by just using the ``range()`` function.
@@ -248,7 +269,7 @@
number. The third parameter is for stepping through the sequence. Here
we gave two which means we are skipping every alternate element.
-{{{ switch to next slide, recap slide }}}
+{{{ switch to next slide, summary slide }}}
Thus we come to the end of this tutorial. We learned about blocks in
Python, indentation, blocks in IPython, for loop, iterating over a
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/getting-started-with-for/slides.org Tue Oct 12 13:02:39 2010 +0530
@@ -0,0 +1,146 @@
+#+LaTeX_CLASS: beamer
+#+LaTeX_CLASS_OPTIONS: [presentation]
+#+BEAMER_FRAME_LEVEL: 1
+
+#+BEAMER_HEADER_EXTRA: \usetheme{Warsaw}\usecolortheme{default}\useoutertheme{infolines}\setbeamercovered{transparent}
+#+COLUMNS: %45ITEM %10BEAMER_env(Env) %10BEAMER_envargs(Env Args) %4BEAMER_col(Col) %8BEAMER_extra(Extra)
+#+PROPERTY: BEAMER_col_ALL 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 :ETC
+
+#+LaTeX_CLASS: beamer
+#+LaTeX_CLASS_OPTIONS: [presentation]
+
+#+LaTeX_HEADER: \usepackage[english]{babel} \usepackage{ae,aecompl}
+#+LaTeX_HEADER: \usepackage{mathpazo,courier,euler} \usepackage[scaled=.95]{helvet}
+
+#+LaTeX_HEADER: \usepackage{listings}
+
+#+LaTeX_HEADER:\lstset{language=Python, basicstyle=\ttfamily\bfseries,
+#+LaTeX_HEADER: commentstyle=\color{red}\itshape, stringstyle=\color{darkgreen},
+#+LaTeX_HEADER: showstringspaces=false, keywordstyle=\color{blue}\bfseries}
+
+#+TITLE: Getting started with for
+#+AUTHOR: FOSSEE
+#+EMAIL:
+#+DATE:
+
+#+DESCRIPTION:
+#+KEYWORDS:
+#+LANGUAGE: en
+#+OPTIONS: H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
+#+OPTIONS: TeX:t LaTeX:nil skip:nil d:nil todo:nil pri:nil tags:not-in-toc
+
+* Outline
+ - ~for~ loop in Python.
+ - Blocks of code in Python.
+ - Indentation
+* Whitespace in Python
+ - Whitespace is significant
+ - blocks are visually separated
+ - Blocks are indented using 4 spaces
+ : Block A
+ : Block A
+ : Block B
+ : Block B
+ : Block A
+ ~Block B~ is an inner block and is indented using 4 spaces
+* Exercise 1
+ Write a ~for~ loop which iterates through a list of numbers and find
+ the square root of each number.
+ :
+ The numbers are,
+ : 1369, 7225, 3364, 7056, 5625, 729, 7056,
+ : 576, 2916
+* Solution 1
+ - Open text editor and type the following code
+ #+begin_src python
+ numbers = [1369, 7225, 3364, 7056, 5625, 729, 7056,
+ 576, 2916]
+
+ for each in numbers:
+ print "Square root of", each, "is", sqrt(each)
+
+ print "This is not in for loop!"
+ #+end_src
+* Save \& run script
+ - Save the script as ~list_roots.py~
+ - Run in ~ipython~ interpreter as,
+ : In []: %run -i list_roots.py
+* Exercise 2
+ From the given numbers make a list of perfect squares and a list of those which are not.
+ :
+ The numbers are,
+ : 7225, 3268, 3364, 2966, 7056, 5625, 729, 5547,
+ : 7056, 576, 2916
+* Exercise 3 (indentation in ~ipython~)
+ Print the square root of numbers in the list.
+ :
+ Numbers are,
+ : 7225, 3268, 3364, 2966, 7056, 5625, 729, 5547,
+ : 7056, 576, 2916
+* Indentation in ~ipython~
+ : In []: numbers = [1369, 7225, 3364, 7056, 5625,
+ : ...: 729, 7056, 576, 2916]
+
+ : In []: for each in numbers:
+ : ...:
+ Note the four spaces here
+ :
+ :
+ :
+ :
+ :
+ :
+* Indentation in ~ipython~ (cont'd)
+ : In []: numbers = [1369, 7225, 3364, 7056, 5625,
+ : ...: 729, 7056, 576, 2916]
+ : In []: for each in numbers:
+ : ...:
+ Note the four spaces here
+ :
+ Now type the rest of the code
+ : ...: print "Square root of", each,
+ : ...: print "is", sqrt(each)
+ : ...:
+ : ...:
+* Indentation in ~python~ interpreter
+ Find out the cube of all the numbers from 1 to 10.
+ :
+ /do it in the python interpreter/
+* Indentation in ~python~ interpreter (cont'd)
+ #+begin_src python
+ >>> for i in range(1, 11):
+ ... print i, "cube is", i**3
+ ...
+ #+end_src
+* ~range()~ function
+ - in built function in Python
+ - generates a list of integers
+ - /syntax:/ range([start,] stop[, step])
+ - /example:/
+ - range(1, 20) - /generates integers from 1 to 20/
+ - range(20) - /generates integers from 0 to 20/
+* Exercise 4
+ Print all the odd numbers from 1 to 50.
+* Summary
+ - blocks in ~python~
+ - indentation
+ - blocks in ~ipython~ interpreter
+ - ~for~ loop
+ - iterating over list using ~for~ loop
+ - ~range()~ function
+* Thank you!
+#+begin_latex
+ \begin{block}{}
+ \begin{center}
+ This spoken tutorial has been produced by the
+ \textcolor{blue}{FOSSEE} team, which is funded by the
+ \end{center}
+ \begin{center}
+ \textcolor{blue}{National Mission on Education through \\
+ Information \& Communication Technology \\
+ MHRD, Govt. of India}.
+ \end{center}
+ \end{block}
+#+end_latex
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/getting-started-with-for/slides.tex Tue Oct 12 13:02:39 2010 +0530
@@ -0,0 +1,285 @@
+% Created 2010-10-12 Tue 12:55
+\documentclass[presentation]{beamer}
+\usepackage[latin1]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage{fixltx2e}
+\usepackage{graphicx}
+\usepackage{longtable}
+\usepackage{float}
+\usepackage{wrapfig}
+\usepackage{soul}
+\usepackage{t1enc}
+\usepackage{textcomp}
+\usepackage{marvosym}
+\usepackage{wasysym}
+\usepackage{latexsym}
+\usepackage{amssymb}
+\usepackage{hyperref}
+\tolerance=1000
+\usepackage[english]{babel} \usepackage{ae,aecompl}
+\usepackage{mathpazo,courier,euler} \usepackage[scaled=.95]{helvet}
+\usepackage{listings}
+\lstset{language=Python, basicstyle=\ttfamily\bfseries,
+commentstyle=\color{red}\itshape, stringstyle=\color{darkgreen},
+showstringspaces=false, keywordstyle=\color{blue}\bfseries}
+\providecommand{\alert}[1]{\textbf{#1}}
+
+\title{Getting started with for}
+\author{FOSSEE}
+\date{}
+
+\usetheme{Warsaw}\usecolortheme{default}\useoutertheme{infolines}\setbeamercovered{transparent}
+\begin{document}
+
+\maketitle
+
+
+
+
+
+
+
+
+
+\begin{frame}
+\frametitle{Outline}
+\label{sec-1}
+
+\begin{itemize}
+\item \texttt{for} loop in Python.
+\item Blocks of code in Python.
+
+\begin{itemize}
+\item Indentation
+\end{itemize}
+
+\end{itemize}
+\end{frame}
+\begin{frame}[fragile]
+\frametitle{Whitespace in Python}
+\label{sec-2}
+
+\begin{itemize}
+\item Whitespace is significant
+
+\begin{itemize}
+\item blocks are visually separated
+\end{itemize}
+
+\item Blocks are indented using 4 spaces
+\begin{verbatim}
+ Block A
+ Block A
+ Block B
+ Block B
+ Block A
+\end{verbatim}
+
+ \texttt{Block B} is an inner block and is indented using 4 spaces
+\end{itemize}
+\end{frame}
+\begin{frame}[fragile]
+\frametitle{Exercise 1}
+\label{sec-3}
+
+ Write a \texttt{for} loop which iterates through a list of numbers and find
+ the square root of each number.
+\begin{verbatim}
+
+\end{verbatim}
+
+ The numbers are,
+\begin{verbatim}
+ 1369, 7225, 3364, 7056, 5625, 729, 7056,
+ 576, 2916
+\end{verbatim}
+\end{frame}
+\begin{frame}[fragile]
+\frametitle{Solution 1}
+\label{sec-4}
+
+\begin{itemize}
+\item Open text editor and type the following code
+\end{itemize}
+
+\begin{verbatim}
+numbers = [1369, 7225, 3364, 7056, 5625, 729, 7056,
+ 576, 2916]
+
+for each in numbers:
+ print "Square root of", each, "is", sqrt(each)
+
+print "This is not in for loop!"
+\end{verbatim}
+\end{frame}
+\begin{frame}[fragile]
+\frametitle{Save \& run script}
+\label{sec-5}
+
+\begin{itemize}
+\item Save the script as \texttt{list\_roots.py}
+\item Run in \texttt{ipython} interpreter as,
+\begin{verbatim}
+ In []: %run -i list_roots.py
+\end{verbatim}
+
+\end{itemize}
+\end{frame}
+\begin{frame}[fragile]
+\frametitle{Exercise 2}
+\label{sec-6}
+
+ From the given numbers make a list of perfect squares and a list of those which are not.
+\begin{verbatim}
+
+\end{verbatim}
+
+ The numbers are,
+\begin{verbatim}
+ 7225, 3268, 3364, 2966, 7056, 5625, 729, 5547,
+ 7056, 576, 2916
+\end{verbatim}
+\end{frame}
+\begin{frame}[fragile]
+\frametitle{Exercise 3 (indentation in \texttt{ipython})}
+\label{sec-7}
+
+ Print the square root of numbers in the list.
+\begin{verbatim}
+
+\end{verbatim}
+
+ Numbers are,
+\begin{verbatim}
+ 7225, 3268, 3364, 2966, 7056, 5625, 729, 5547,
+ 7056, 576, 2916
+\end{verbatim}
+\end{frame}
+\begin{frame}[fragile]
+\frametitle{Indentation in \texttt{ipython}}
+\label{sec-8}
+
+\begin{verbatim}
+ In []: numbers = [1369, 7225, 3364, 7056, 5625,
+ ...: 729, 7056, 576, 2916]
+\end{verbatim}
+
+
+\begin{verbatim}
+ In []: for each in numbers:
+ ...:
+\end{verbatim}
+
+ Note the four spaces here
+\begin{verbatim}
+
+
+
+
+
+
+\end{verbatim}
+\end{frame}
+\begin{frame}[fragile]
+\frametitle{Indentation in \texttt{ipython} (cont'd)}
+\label{sec-9}
+
+\begin{verbatim}
+ In []: numbers = [1369, 7225, 3364, 7056, 5625,
+ ...: 729, 7056, 576, 2916]
+ In []: for each in numbers:
+ ...:
+\end{verbatim}
+
+ Note the four spaces here
+\begin{verbatim}
+
+\end{verbatim}
+
+ Now type the rest of the code
+\begin{verbatim}
+ ...: print "Square root of", each,
+ ...: print "is", sqrt(each)
+ ...:
+ ...:
+\end{verbatim}
+\end{frame}
+\begin{frame}[fragile]
+\frametitle{Indentation in \texttt{python} interpreter}
+\label{sec-10}
+
+ Find out the cube of all the numbers from 1 to 10.
+\begin{verbatim}
+
+\end{verbatim}
+
+ \emph{do it in the python interpreter}
+\end{frame}
+\begin{frame}[fragile]
+\frametitle{Indentation in \texttt{python} interpreter (cont'd)}
+\label{sec-11}
+
+\begin{verbatim}
+>>> for i in range(1, 11):
+... print i, "cube is", i**3
+...
+\end{verbatim}
+\end{frame}
+\begin{frame}
+\frametitle{\texttt{range()} function}
+\label{sec-12}
+
+\begin{itemize}
+\item in built function in Python
+\item generates a list of integers
+
+\begin{itemize}
+\item \emph{syntax:} range([start,] stop[, step])
+\item \emph{example:}
+
+\begin{itemize}
+\item range(1, 20) - \emph{generates integers from 1 to 20}
+\item range(20) - \emph{generates integers from 0 to 20}
+\end{itemize}
+
+\end{itemize}
+
+\end{itemize}
+\end{frame}
+\begin{frame}
+\frametitle{Exercise 4}
+\label{sec-13}
+
+ Print all the odd numbers from 1 to 50.
+\end{frame}
+\begin{frame}
+\frametitle{Summary}
+\label{sec-14}
+
+\begin{itemize}
+\item blocks in \texttt{python}
+\item indentation
+\item blocks in \texttt{ipython} interpreter
+\item \texttt{for} loop
+\item iterating over list using \texttt{for} loop
+\item \texttt{range()} function
+\end{itemize}
+\end{frame}
+\begin{frame}
+\frametitle{Thank you!}
+\label{sec-15}
+
+ \begin{block}{}
+ \begin{center}
+ This spoken tutorial has been produced by the
+ \textcolor{blue}{FOSSEE} team, which is funded by the
+ \end{center}
+ \begin{center}
+ \textcolor{blue}{National Mission on Education through \\
+ Information \& Communication Technology \\
+ MHRD, Govt. of India}.
+ \end{center}
+ \end{block}
+\end{frame}
+
+\end{document}