\documentclass[12pt]{article} \title{Python: Data Structures} \author{FOSSEE} \usepackage{listings} \lstset{language=Python, basicstyle=\ttfamily, commentstyle=\itshape\bfseries, showstringspaces=false } \newcommand{\typ}[1]{\lstinline{#1}} \usepackage[english]{babel} \usepackage[latin1]{inputenc} \usepackage{times} \usepackage[T1]{fontenc} \usepackage{ae,aecompl} \usepackage{mathpazo,courier,euler} \usepackage[scaled=.95]{helvet} \begin{document} \date{} \vspace{-1in} \begin{center} \LARGE{Python: Data Structures}\\ \large{FOSSEE} \end{center} \section{Basic Looping} \typ{while} \begin{lstlisting} In []: a, b = 0, 1 In []: while b < 10: ...: print b, ...: a, b = b, a + b # Fibonacci Sequence \end{lstlisting} \typ{for} and \typ{range}\\ \typ{range([start,] stop[, step])} \begin{lstlisting} In []: for i in range(3, 10, 2): ....: print i, i * i 3 9 5 25 7 49 9 81 \end{lstlisting} List methods (Contd.) \begin{lstlisting} In []: num = [1, 2, 3, 4] In []: num.append([9, 10, 11]) In []: num Out[]: [1, 2, 3, 4, [9, 10, 11]] In []: num = [1, 2, 3, 4] In []: num.extend([5, 6, 7]) In []: num Out[]: [1, 2, 3, 4, 5, 6, 7] In []: num.reverse() In []: num Out[]: [7, 6, 5, 4, 3, 2, 1] In []: num.remove(6) In []: num \end{lstlisting} Slicing: \typ{list[initial:final:step]} \begin{lstlisting} In []: a[1:-1:2] Out[]: [2, 4] In []: a[::2] Out[]: [1, 3, 5] In []: a[-1::-1] Out[]: [5, 4, 3, 2, 1] \end{lstlisting} Tuples(Immutable lists) \begin{lstlisting} In []: t = (1, 2, 3, 4, 5, 6, 7, 8) In []: t[0] + t[3] + t[-1] Out[]: 13 In []: t[4] = 7 # ERROR: tuples are immutable \end{lstlisting} Sets \begin{lstlisting} In []: f = set([1,2,3,5,8]) In []: p = set([2,3,5,7]) In []: f | p # Union of two sets Out[]: set([1, 2, 3, 5, 7, 8]) In []: g = set([2, 4, 5, 7, 4, 0, 5]) In []: g Out[]: set([2, 4, 5, 7, 0]) # No repetition allowed. \end{lstlisting} \end{document}