\documentclass[11pt,twocolumn]{article} \usepackage{graphicx} \newenvironment{enumcpt}{\begin{enumerate} \topsep 0pt \partopsep 0pt \parsep 0pt \itemsep 0pt \leftmargin -1in \rightmargin 0pt }{\end{enumerate}} \begin{document} \title{Instruction sheet for spoken tutorials for Python} \author{Fossee Team} \maketitle \section*{Introduction } {This document is an instruction sheet for Python spoken tutorials described module wise.} \setlength{\columnsep}{15pt } \begin{enumerate} \item You have been given a set of modules of Python spoken tutorials. \item You will typically do one module at a time. \item These tutorials are meant for Linux environment. \item You should follow the spoken tutorials and do all the assignments mentioned in them. \item If you find it difficult at the first go, then consider listening to the video tutorial more than once and then re-do the assignments. \item You must go through the Spoken tutorials in the following modular order of sequence. \end{enumerate} \section*{General Instructions} {These instructions are to be followed for each module.} \setlength{\columnsep}{15pt } \begin{enumerate} \item Please open the \emph{index.html} file by right clicking on the file and opening it with firefox browser. \item The page thus opened, contains all the modules and corresponding files for each module. \item Please follow the tutorials as shown in the videos. \item You can do a hands-on on the terminal simultaneously with the ongoing spoken tutorial by pausing the video as and when necessary. \item Pause the video wherever there is an assignment and only after finishing it, continue with the video. \item After finishing all the assignments, please proceed to next module. \item To open a terminal with ipython pre-loaded, click on the \emph{ipython-pylab} icon located on the desktop. You may also click on the start menu(blue icon 'K') at the bottom left corner and search for \emph{ipython-pylab} in the search bar. \end{enumerate} \section{Module - 1} Go through the general instructions as stated above before starting each module. \\ This module deals with the introduction of Ipython. The basics of plotting will be covered in this module. \subsection{Getting started with Ipython.} Tutorial required: \\ 1\_1\_getting\_started\_with\_ipython.ogv \\ This video deals with introduction to ipython interpretor, navigating across the history of interpretor, using tab-completion, looking up of documentation of functions and interrupt incomplete or incorrect commands. \subsection{Using plot interactively.} Tutorial required: \\ 1\_2\_using\_plot\_interactively.ogv \\ This video would teach you how to create simple plots of mathematical functions and how to use \emph{figure} window to study plots better. \subsection{Embellishing a plot.} Tutorial required:\\ 1\_3\_embellishing\_a\_plot.ogv \\ This video would teach you how to modify the attributes of the plot - color, line, style, linewidth. One can learn how to add title to the plot, label x and y axes, add annotations to the plot, \emph{Set} and \emph{Get} the limits of axis. \subsection{Saving plots.} Tutorial required: \\ 1\_4\_saving\_plots.ogv \\ This video would teach you how to save plots using \textbf{savefig()} function and also save plots in various other formats. \subsection{Multiple plots.} Tutorial required: \\ 1\_5\_multiple\_plots.ogv \\ This video would help you to learn multiple plots which are overlaid, use the \emph{figure} command, use the \emph{legend} command, switch between the plots and perform various operations, and to create and switch plots. \subsection{Additional features of Ipython} Tutorial required: \\ 1\_6\_additional\_features\_of\_ipython.ogv \\ This video would teach you how to retrieve your Ipython history, view a part of history, save a part of your history, run a script from with Ipython. \\ \section{Module - 2} Go through the general instructions as stated above before starting each module.\\ This module has the following features: \subsection{Loading data from files.} Tutorial required: \\ 2\_1\_loading\_data\_from\_files.ogv \\ Files required:\\ pendulum.txt,primes.txt,pendulum\_semicolon.txt \\ This video deals with reading data from the files with a single column of data, read data from files with multiple columns separated by spaces and other delimiters. \begin{enumcpt} \item You may access the files \emph{pendulum.txt}, \emph{primes.txt} and \emph{pendulum\_semicolon.txt} by clicking on \emph{code}, corresponding to \emph{Module 2.1} on the index page. Please use them as instructed in the tutorial. \item Please do not edit the content of these files while viewing them. \end{enumcpt} \subsection{Plotting data.} Tutorial required: \\ 2\_2\_plotting\_data.ogv \\ This video would teach you how to define a list of numbers, perform element-wise squaring of lists, plot data points, plot error bars. \subsection{Other types of plots.} Tutorial required:\\ 2\_3\_other\_types\_of\_plots.ogv \\ Files required: company-a-data.txt \\ This video would teach you how to create scatter plot, pie charts, bar charts, log-log charts and using the \emph{matplotlib} help.\\ \\ \begin{enumcpt} \item You may access the file \emph{company-a-data.txt} by clicking on \emph{code}, corresponding to \emph{Module 2.3} on the index page. Please use the file as instructed in the tutorial. \end{enumcpt} \section{Module - 3} Go through the general instructions as stated above before starting each module.\\ This module has the following features: \subsection{Getting started with lists.} Tutorial required: \\ 3\_1\_getting\_started\_with\_lists.ogv \\ This video would teach you how to create lists, access elements, append elements to the lists, delete the elements from the lists. \subsection{Getting started with for.} Tutorial required: \\ 3\_2\_getting\_started\_with\_for.ogv \\ This video would teach you how to use for in blocks of code in python. It would also give an overview of the \textbf{range()} function. It should show you how to write code blocks in python and Ipython interpreter. \subsection{Getting started with strings.} Tutorial required: \\ 3\_3\_getting\_started\_with\_strings.ogv \\ This video would teach you how to define strings in different ways, concatenating strings, printing a string, accessing individual elements of the string, and learn immutability of the strings. \subsection{Getting started with files.} Tutorial required: \\ 3\_4\_getting\_started\_with\_files \\ Files required : pendulum.txt \\ This video would teach you how to open a file, read the comments of the file line by line, read the entire content of the file, append the lines of a file to a list and close a file. \begin{enumcpt} \item You may access the file \emph{pendulum.txt} by clicking on \emph{code}, corresponding to \emph{Module 3.4} on the index page. Please use the file as instructed in the tutorial \end{enumcpt} \subsection{Parsing data.} Tutorial required: \\ 3\_5\_parsing\_data.ogv \\ Files required : sslc.txt \\ This video would teach you how to split using a delimiter, remove the white space around the string, convert the datatypes of variables from one type to other. \begin{enumcpt} \item You may access the file \emph{sslc.txt} by clicking on \emph{code}, corresponding to \emph{Module 3.5} on the index page. Please use the file as instructed in the tutorial. \end{enumcpt} \subsection{Statistics.} Tutorial required: \\ 3\_6\_statistics.ogv \\ Files required :\\ football.txt, sslc2.txt \\ This video teaches you how to do statistical operations in Python and take a sum of set of numbers; find their mean, median and standard deviation. \\ \begin{enumcpt} \item You may access the files \emph{football.txt} and \emph{sslc2.txt} by clicking on \emph{code}, corresponding to \emph{Module 3.6} on the index page. Please use them as instructed in the tutorial. \end{enumcpt} \section{Module - 4} Go through the general instructions as stated above before starting each module.\\ This module has the following features: \subsection{Getting started with arrays.} Tutorial required : \\ 4\_1\_getting\_started\_with\_arrays.ogv \\ This video teaches you how to create arrays using data, create arrays from lists, perform basic operations, create identity matrix, use functions. \subsection{Accessing parts of the arrays.} Tutorial required : \\ 4\_2\_accessing\_parts\_of\_the\_arrays.ogv \\ Files required - squares.png\\ This video teaches you how to access and change individual elements of the arrays, access and change rows and columns of the arrays, access and change rows and columns of arrays, access and change other chunks from an array, using slicing and string. It also teaches you to read images into an array and perform processing on them, using simple array manipulations. \begin{enumcpt} \item You may access the image file \emph{squares.png} by clicking on \emph{code}, corresponding to \emph{Module 4.1} on the index page. Please use the file as instructed in the tutorial. \end{enumcpt} \subsection{Matrices} Tutorial required : \\ 4\_3\_matrices.ogv \\ This video teaches you how to create matrices using data, from lists; do basic matrix operations like addition, multiplication. It also teaches you to perform operations to find out the inverse, determinant, eigenvalue values, norm and singular value decomposition of a matrix. \subsection{Least square fit} Tutorial required: \\ 4\_4\_least\_square\_fit.ogv \\ Files required : pendulum.txt \\ This video teaches you how to generate the least square fit line for a given set of points. Before this tutorial, do remember to finish the tutorials on Using plot interactively, Loading data from the files and Getting started with arrays. \\ \\ \begin{enumcpt} \item You may access the file \emph{pendulum.txt} by clicking on \emph{code}, corresponding to \emph{Module 4.3} on the index page. Please use the file as instructed in the tutorial. \end{enumcpt} \section{Module - 5} Go through the general instructions as stated above before starting each module. This module has these features: \subsection{Basic datatypes and operators} Tutorial required: \\ 5\_1\_basic\_datatypes\_and\_operators.ogv \\ This video teaches you about datatypes( Numbers, Boolean, Sequence), operators in python (Arithmetic Operators, Boolean Operators) and Python sequence datatypes(list,string,tuple). \subsection{Input and Output.} Go through the general instructions as stated below before starting each module. Tutorial required: \\ 5\_2\_input\_output.ogv \\ This video teaches you how to print some value, usage of modifiers, taking input from users and displaying a prompt to the user before taking the input. \subsection{Conditionals.} Tutorial required: \\ 5\_3\_ conditionals.ogv \\ This video teaches you how to use if/else blocks, if/elif/else blocks and usage of ternary conditional statements - C if X and Y. \subsection{Loops.} Tutorial required: \\ 5\_4\_loops.ogv \\ This video teaches you on loops in Python such as \textbf{for}, \textbf{while} and how to use \textbf{range()} function in for loop. \\ \begin{enumcpt} \item Please note that we have used 4 \emph{spaces} as indentation. \end{enumcpt} \section{Module - 6} Go through the general instructions as stated above before starting each module. This module has these features: \subsection{Manipulating Lists.} Tutorial required: \\ 6\_1\_manipulating\_lists.ogv \\ This video teaches you how to concatenate two lists, slicing and striding of lists and sort and reverse lists. \subsection{Manipulating Strings.} Tutorial required: \\ 6\_2\_manipulating\_strings.ogv \\ This video teaches you how to slice strings and get sub-strings out of them, reverse strings, replace characters in strings, convert strings to upper case or lower case and join a list of strings. \subsection{Tuples.} Tutorial required: \\ 6\_3\_tuples.ogv \\ This video teaches you what tuples are, comparison with lists,know why they are needed and where to use them. \subsection{Dictionaries.} Tutorial required: \\ 6\_4\_dictionaries.ogv \\ This video teaches you how to create dictionaries, keys and values, checking for elements and iterating over elements. \subsection{Sets.} Tutorial required: \\ 6\_5\_sets.ogv \\ This video teaches you how to create sets from lists, perform union, intersection and symmetric difference operations, check if a set is a subset of other, understand various similarities with lists like length and containership.\\ \\ \section{Module - 7} Go through the general instructions as stated below before starting each module. Instruction for this module: \emph{SciPy} package has to be installed from the package manager. This module has these features: \subsection{Getting started with functions.} Tutorial required: \\ 7\_1\_getting\_started\_with\_functions.ogv \\ This video teaches you how to define a function, defines functions with arguments, learn about docstrings, learn about function return value and reading, understanding the code. \subsection{Advanced features of a function.} Tutorial required: \\ 7\_2\_advanced\_features\_of\_a\_function.ogv \\ This video teaches you how to assign default values to arguments, when defining and calling functions with keywords arguments, and to learn the built-in functions available in Python standard library and scientific computing libraries. \subsection{Using Python modules.} Tutorials required: \\ 7\_3\_using\_python\_modules.ogv \\ Files required: \\sine.py \\ This video teaches you how to execute python scripts from command line, use import scripts, import scipy and pylab modules and use python standard modules and standard modules. \begin{enumcpt} \item You may access the file \emph{sine.py} by clicking on \emph{code}, corresponding to \emph{Module 8.3} on the index page. Please use the file as instructed in the tutorial. \end{enumcpt} \subsection{Writing Python scripts.} Tutorials required: \\ 7\_4\_writing\_python\_scripts.ogv \\ This video teaches you what is importing, writing our own python modules, and understanding the idiom. \subsection{Testing and Debugging.} Tutorials required: \\ 7\_5\_testing\_and\_debugging.ogv \\ Files required: \\gcd.py, lcmtestcases.txt, testcases.txt \\ This video teaches you what is software testing, test simple functions for their functionality, automate tests, needs for coding style, learn some of the standards followed by the Python community and handle errors and exceptions. \\ \\ \begin{enumcpt} \item You may access the files \emph{gcd.py}, \emph{lcmtestcases.txt} and \emph{testcases.txt} by clicking on \emph{code}, corresponding to \emph{Module 8.5} on the index page. Please use them as instructed in the tutorial. \item In scripts, we would be using 4 \emph{spaces} for indentation. \item You can use any editor for writing the scripts. We have used the \emph{gedit} text editor. \end{enumcpt} \end{document}