% Created 2011-07-06 Wed 16:17
\documentclass[presentation]{beamer}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{fixltx2e}
\usepackage{graphicx}
\usepackage{longtable}
\usepackage{float}
\usepackage{wrapfig}
\usepackage{soul}
\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{}
\author{FOSSEE}
\date{}

\usetheme{Warsaw}\usecolortheme{default}\useoutertheme{infolines}\setbeamercovered{transparent}
\begin{document}











\begin{frame}

\begin{center}
\vspace{12pt}
\textcolor{blue}{\huge Dictionaries}
\end{center}
\vspace{18pt}
\begin{center}
\vspace{10pt}
\includegraphics[scale=0.95]{../images/fossee-logo.png}\\
\vspace{5pt}
\scriptsize Developed by FOSSEE Team, IIT-Bombay. \\ 
\scriptsize Funded by National Mission on Education through ICT\\
\scriptsize  MHRD,Govt. of India\\
\includegraphics[scale=0.30]{../images/iitb-logo.png}\\
\end{center}
\end{frame}
\begin{frame}
\frametitle{Objectives}
\label{sec-2}

At the end of this tutorial, you will be able to,
\begin{itemize}
\item Create dictionaries.
\item Add and delete data from dictionaries.
\item Retrieve data from dictionaries.
\item Check for container-ship of keys.
\item Iterate over elements.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Pre-requisite}
\label{sec-3}

Spoken tutorial on -
\begin{itemize}
\item Basic datatypes and operators
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Overview of Dictionaries}
\label{sec-4}


\begin{itemize}
\item A dictionary contains meaning of words
\begin{itemize}
\item \emph{Word} is the \emph{key} here.
\item \emph{Meaning} is the \emph{value} here.
\end{itemize}
\item A Key-Value pair data structure
\begin{itemize}
\item Provide key-value mappings
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}[fragile]
\frametitle{Accessing Elements}
\label{sec-5}


\begin{itemize}
\item syntax
\begin{verbatim}
     extensions[key]
\end{verbatim}

\end{itemize}
\end{frame}
\begin{frame}[fragile]
\frametitle{Retrieve keys and values}
\label{sec-6}


\begin{itemize}
\item \verb~.keys()~ method
\begin{verbatim}
     In []: extensions.keys()
\end{verbatim}

    Returns a list of keys in the dictionary.
\item \verb~.values()~ method
\begin{verbatim}
     In []: extensions.values()
\end{verbatim}

    Returns the list of values in the dictionary.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Exercise 1}
\label{sec-7}

\begin{itemize}
\item Print the keys and values in the dictionary one by one.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Summary}
\label{sec-8}

  In this tutorial, we have learnt to,


\begin{itemize}
\item Create dictionaries namely --
\begin{itemize}
\item empty dictionaries
\item dictionaries with data.
\end{itemize}
\item Access elements in the dictionaries using the keys.
\item Add elements to a dictionary by assigning a value to a key.
\item Delete elements from a dictionary by using the function ``del''.
\item Retrieve the keys and values by using the methods ``.keys()'' and 
    ``.values()'' respectively.
\item Iterate over elements of a dictionary using a ``for'' loop.
\end{itemize}
\end{frame}
\begin{frame}[fragile]
\frametitle{Evaluation}
\label{sec-9}


\begin{enumerate}
\item Container-ship of values can be checked in a python dictionary
\begin{itemize}
\item True
\item False
\vspace{5pt}
\end{itemize}
\item Consider the python dictionary 
   
\begin{verbatim}
    x = {'a':['a','b','c'], 'b':(1, 2, 3),
          1:{1:'one', 2:'two'},
          10:{10:'ten', 11:'eleven'}}
\end{verbatim}


   What will the following code return?\\ 
     \verb~(1, 2, 3) in x.values()~
\vspace{3pt}     
\begin{itemize}
\item True
\item False
\item Container-ship of values cannot be checked in dictionaries
\item The dictionary is invalid
\end{itemize}
\end{enumerate}
\end{frame}
\begin{frame}
\frametitle{Solutions}
\label{sec-10}


\begin{enumerate}
\item False
\vspace{15pt}
\item True
\end{enumerate}
\end{frame}
\begin{frame}

  \begin{block}{}
  \begin{center}
  \textcolor{blue}{\Large THANK YOU!} 
  \end{center}
  \end{block}
\begin{block}{}
  \begin{center}
    For more Information, visit our website\\
    \url{http://fossee.in/}
  \end{center}  
  \end{block}
\end{frame}

\end{document}