Minor edits to day1quiz1.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Tutorial slides on Python.
%
% Author: FOSSEE
% Copyright (c) 2009, FOSSEE, IIT Bombay
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[14pt,compress]{beamer}
%\documentclass[draft]{beamer}
%\documentclass[compress,handout]{beamer}
%\usepackage{pgfpages}
%\pgfpagesuselayout{2 on 1}[a4paper,border shrink=5mm]
% Modified from: generic-ornate-15min-45min.de.tex
\mode<presentation>
{
\usetheme{Warsaw}
\useoutertheme{infolines}
\setbeamercovered{transparent}
}
\usepackage[english]{babel}
\usepackage[latin1]{inputenc}
%\usepackage{times}
\usepackage[T1]{fontenc}
% Taken from Fernando's slides.
\usepackage{ae,aecompl}
\usepackage{mathpazo,courier,euler}
\usepackage[scaled=.95]{helvet}
\definecolor{darkgreen}{rgb}{0,0.5,0}
\usepackage{listings}
\lstset{language=Python,
basicstyle=\ttfamily\bfseries,
commentstyle=\color{red}\itshape,
stringstyle=\color{darkgreen},
showstringspaces=false,
keywordstyle=\color{blue}\bfseries}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Macros
\setbeamercolor{emphbar}{bg=blue!20, fg=black}
\newcommand{\emphbar}[1]
{\begin{beamercolorbox}[rounded=true]{emphbar}
{#1}
\end{beamercolorbox}
}
\newcounter{time}
\setcounter{time}{0}
\newcommand{\inctime}[1]{\addtocounter{time}{#1}{\tiny \thetime\ m}}
\newcommand{\typ}[1]{\lstinline{#1}}
\newcommand{\kwrd}[1]{ \texttt{\textbf{\color{blue}{#1}}} }
%%% This is from Fernando's setup.
% \usepackage{color}
% \definecolor{orange}{cmyk}{0,0.4,0.8,0.2}
% % Use and configure listings package for nicely formatted code
% \usepackage{listings}
% \lstset{
% language=Python,
% basicstyle=\small\ttfamily,
% commentstyle=\ttfamily\color{blue},
% stringstyle=\ttfamily\color{orange},
% showstringspaces=false,
% breaklines=true,
% postbreak = \space\dots
% }
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Title page
\title[Tricks of the trade]{Python for Science and Engg: Tricks of the trade}
\author[FOSSEE] {FOSSEE}
\institute[IIT Bombay] {Department of Aerospace Engineering\\IIT Bombay}
\date[] {28 January, 2010\\Day 1, Tricks of the Trade}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\pgfdeclareimage[height=0.75cm]{iitmlogo}{iitmlogo}
%\logo{\pgfuseimage{iitmlogo}}
%% Delete this, if you do not want the table of contents to pop up at
%% the beginning of each subsection:
\AtBeginSubsection[]
{
\begin{frame}<beamer>
\frametitle{Outline}
\tableofcontents[currentsection,currentsubsection]
\end{frame}
}
\AtBeginSection[]
{
\begin{frame}<beamer>
\frametitle{Outline}
\tableofcontents[currentsection,currentsubsection]
\end{frame}
}
% If you wish to uncover everything in a step-wise fashion, uncomment
% the following command:
%\beamerdefaultoverlayspecification{<+->}
%%\includeonlyframes{current,current1,current2,current3,current4,current5,current6}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% DOCUMENT STARTS
\begin{document}
\begin{frame}
\maketitle
\end{frame}
%% \begin{frame}
%% \frametitle{Outline}
%% \tableofcontents
%% % You might wish to add the option [pausesections]
%% \end{frame}
\begin{frame}
\frametitle{Workshop Schedule: Day 1}
\begin{description}
\item[Tricks of the trade] Thu 09:00--09:30
\item[Session 1] Thu 09:30--10:30
\item[Session 2] Thu 10:45--11:45
\item[Session 3] Thu 11:50--12:30
\item[Session 4] Thu 12:30--1:30
\item[Quiz 1] Thu 14:30--14:45
\item[Exercises] Thu 14:45--15:30
\item[Session 5] Thu 15:45--16:45
\item[Quiz 2] Thu 16:50--17:05
\end{description}
\end{frame}
\begin{frame}
\frametitle{Workshop Schedule: Day 2}
\begin{description}
\item[Session 1] Fri 09:00--10:00
\item[Session 2] Fri 10:05--11:05
\item[Session 3] Fri 11:20--12:20
\item[Session 4] Fri 12:25--13:25
\item[Quiz 1] Fri 14:25--14:40
\item[Exercises] Fri 14:40--15:25
\item[Session 5] Fri 15:40--16:40
\item[Quiz 2] Fri 16:45--17:00
\end{description}
\end{frame}
\section{Checklist}
\begin{frame}
\frametitle{Checklist}
\begin{enumerate}
\item IPython
\item Editor
\item Data files:
\begin{itemize}
\item \typ{sslc1.txt}
\item \typ{pendulum.txt}
\item \typ{points.txt}
\item \typ{pos.txt}
\item \typ{holmes.txt}
\end{itemize}
\item Python scripts:
\begin{itemize}
\item \typ{sslc_allreg.py}
\item \typ{sslc_science.py}
\end{itemize}
\item Images
\begin{itemize}
\item \typ{lena.png}
\item \typ{smoothing.gif}
\end{itemize}
\end{enumerate}
\end{frame}
\section{Starting up Ipython}
\begin{frame}[fragile]
\frametitle{Starting up \ldots}
\begin{block}{}
\begin{lstlisting}
$ ipython -pylab
\end{lstlisting} %$
\end{block}
\begin{lstlisting}
In []: print "Hello, World!"
Hello, World!
\end{lstlisting}
Exiting
\begin{lstlisting}
In []: ^D(Ctrl-D)
Do you really want to exit([y]/n)? y
\end{lstlisting}
\end{frame}
\section{Loops}
\begin{frame}[fragile]
\frametitle{Loops}
Breaking out of loops
\begin{lstlisting}
In []: while True:
...: print "Hello, World!"
...:
Hello, World!
Hello, World!^C(Ctrl-C)
------------------------------------
KeyboardInterrupt
\end{lstlisting}
\end{frame}
\section{Indentation}
\begin{frame}[fragile]
\frametitle{Indentation}
\begin{lstlisting}
In []: while True:
...: print "Hello, World!"
...:
\end{lstlisting}
\emphbar{\alert{Indentation: Notice the 4 spaces before\\} \typ{print "Hello, World!"}\\
Hit the ``ENTER'' key twice to return to the previous indentation level}
\end{frame}
\section{Tab Completion}
\begin{frame}[fragile]
\frametitle{Tab Completion}
Type \typ{pri} and hit the Tab key
\begin{lstlisting}
In []: pri <Tab>
In []: print
\end{lstlisting}
Type \typ{whi} and hit the Tab key
\begin{lstlisting}
In []: whi <Tab>
In []: while
\end{lstlisting}
\end{frame}
\section{Tab Suggestions}
\begin{frame}[fragile]
\frametitle{Tab Suggestions}
\begin{lstlisting}
In []: a = 'Hello world'
In []: a.<Tab>
\end{lstlisting}
\ldots
\end{frame}
\section{Command history}
\begin{frame}[fragile]
\frametitle{Command history}
\typ{In []:} \alert{$\uparrow$}\\
\typ{In []: a = 'Hello world'}\\
\emphbar{The previously entered commands can be browsed using the \alert{$\uparrow$} key.}
\end{frame}
\section{Saving Commands}
\begin{frame}[fragile]
\frametitle{History and Saving of Commands}
\begin{itemize}
\item \typ{\%hist} gives history of commands in a session
\item \typ{\%save} can be used to save the commands
\end{itemize}
\begin{block}{Careful about errors!}
\kwrd{\%hist} will contain the errors as well,\\
so be careful while selecting line numbers.
\end{block}
\end{frame}
\section{Editors}
\begin{frame}[fragile]
\frametitle{Editors}
The following are some good editors:
\begin{itemize}
\item emacs
\item vim
\item \alert{scite} - we recommend it
\end{itemize}
\end{frame}
\section{Scite - How to}
\begin{frame}[fragile]
\frametitle{Scite - How to \ldots}
\begin{itemize}
\item Opening scite
\begin{itemize}
\item GNU/Linux: \alert{Applications} $\rightarrow$ \alert{Programming} $\rightarrow$ \alert{SciTE Text Editor}
\item Windows: Double click on the \alert{SciTE} Desktop icon
\end{itemize}
\item Type the contents
\item Saving the file with a filename \alert{File $\rightarrow$ Save as}
\item Saving the file \alert{File $\rightarrow$ Save}
\item Exiting the editor \alert{File $\rightarrow$ Exit}
\item To open an existing file: \alert{File $\rightarrow$ Open}
\end{itemize}
\end{frame}
\section{Summary}
\begin{frame}[fragile]
\frametitle{What did we learn?}
\begin{itemize}
\item Starting up IPython
\item Loops - Indentation and breaking out of loops
\item \kwrd{\%hist} - History of commands
\item \kwrd{\%save} - Saving commands
\item Using SciTE
\end{itemize}
\end{frame}
\end{document}