summaryrefslogtreecommitdiff
path: root/advanced_features_of_functions/slides.org
diff options
context:
space:
mode:
authorJovina2011-07-12 12:14:01 +0530
committerJovina2011-07-12 12:14:01 +0530
commitbc1bdc9be493bada965904f7c6235aa09a082b18 (patch)
treedcd325b197e858b9f8631b58962fa7e94ed24478 /advanced_features_of_functions/slides.org
parent22aae6a95dd1b330536057b051434efb2a7fbc5d (diff)
downloadst-scripts-bc1bdc9be493bada965904f7c6235aa09a082b18.tar.gz
st-scripts-bc1bdc9be493bada965904f7c6235aa09a082b18.tar.bz2
st-scripts-bc1bdc9be493bada965904f7c6235aa09a082b18.zip
Major changes to script & slides of 'advanced features of functions'.
Diffstat (limited to 'advanced_features_of_functions/slides.org')
-rw-r--r--advanced_features_of_functions/slides.org152
1 files changed, 115 insertions, 37 deletions
diff --git a/advanced_features_of_functions/slides.org b/advanced_features_of_functions/slides.org
index fb66b6f..947b306 100644
--- a/advanced_features_of_functions/slides.org
+++ b/advanced_features_of_functions/slides.org
@@ -18,7 +18,7 @@
#+LaTeX_HEADER: commentstyle=\color{red}\itshape, stringstyle=\color{darkgreen},
#+LaTeX_HEADER: showstringspaces=false, keywordstyle=\color{blue}\bfseries}
-#+TITLE: Advanced features of functions
+#+TITLE:
#+AUTHOR: FOSSEE
#+EMAIL:
#+DATE:
@@ -29,58 +29,136 @@
#+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
- - Assigning default values to arguments
- - Calling functions using Keyword arguments
- - functions in standard library
-* Question 1
- Redefine the function ~welcome~, by interchanging it's
- arguments. Place the ~name~ argument with it's default value of
+*
+#+begin_latex
+\begin{center}
+\vspace{12pt}
+\textcolor{blue}{\huge Advanced features of Functions}
+\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_latex
+* Objectives
+ At the end of this tutorial, you will be able to,
+
+ - Assign default values to arguments, when defining functions.
+ - Define and call functions with keyword arguments.
+ - Learn some of the built-in functions available in Python standard
+ library and the scientific computing libraries.
+* Pre-requisite
+Spoken tutorial on -
+- Getting started with functions
+* Functions
+#+begin_src Python
+s.strip() # strips on spaces.
+s.strip('@') # strips the string of '@' symbols.
+
+plot(x, y) # plots with x vs. y using default line style.
+plot(x, y, 'o') # plots x vs. y with circle markers.
+
+linspace(0, 2*pi, 100) # returns 100 points between 0 and 2pi
+linspace(0, 2*pi) # returns 50 points between 0 and 2pi
+#+end_src
+* Exercise 1
+ - Redefine the function ~welcome~, by interchanging it's
+ arguments.
+ Place the ~name~ argument with it's default value of
"World" before the ~greet~ argument.
* Solution 1
#+begin_src python
def welcome(name="World", greet):
print greet, name
#+end_src
- We get an error that reads ~SyntaxError: non-default argument
- follows default argument~. When defining a function all the
+ We get an error that reads ~SyntaxError: non-default argument follows
+ default argument~. When defining a function all the
argument with default values should come at the end.
-* Question 2
- See the definition of linspace using ~?~ and observe how all the
+* Exercise 2
+ - See the definition of linspace using ~?~ and make a note of all the
arguments with default values are towards the end.
-* Solution 2
- #+begin_src python
- linspace?
- #+end_src
-* Question 3
- Redefine the function ~welcome~ with a default value of
- "Hello" to the ~greet~ argument. Then, call the function without any
- arguments.
-* Solution 3
- #+begin_src python
- def welcome(greet="Hello", name="World"):
- print greet, name
-
- welcome()
- #+end_src
+* Exercise 3
+ - Redefine the function ~welcome~ with a default value of
+ "Hello" to the ~greet~ argument.
+ Then, call the function without any arguments.
+* Keyword arguments examples
+#+begin_src Python
+legend(['sin(2y)'], loc = 'center')
+
+plot(y, sin(y), 'g', linewidth = 2)
+
+annotate('local max', xy = (1.5, 1))
+
+pie(science.values(), labels = science.keys())
+#+end_src
+* Built-in functions
+#+begin_src Python
+ Math functions - abs, sin, ....
+
+ Plot functions - plot, bar, pie ...
+
+ Boolean functions - and, or, not ...
+#+end_src
+* Classes of functions
+#+begin_src Python
+- pylab
+ - plot, bar, contour, boxplot, errorbar, log, polar, quiver, semilog
+
+- scipy (modules)
+ - fftpack, stats, linalg, ndimage, signal, optimize, integrate
+#+end_src
* Summary
- You should now be able to --
- + define functions with default arguments
- + call functions using keyword arguments
-* Thank you!
+ In this tutorial, we have learnt to,
+
+ - Define functions with default arguments.
+ - Call functions using keyword arguments.
+ - Use the range of functions available in the Python standard library
+ and the Scientific Computing related packages.
+
+* Evaluation
+1. All arguments of a function cannot have default values.
+ - True or False?
+
+2. The following is a valid function definition. True or False?
+#+begin_src Python
+def seperator(count=40, char, show=False):
+ if show:
+ print char * count
+ return char * count
+#+end_src
+3. When calling a function,
+
+ - the arguments should always be in the order in which they are defined.
+ - only keyword arguments can be in any order, but should be called
+ at the beginning.
+ - only keyword arguments can be in any order, but should be called
+ at the end.
+* Solutions
+1. False
+
+2. False
+
+3. only keyword arguments can be in any order,
+ but should be called at the end
+*
#+begin_latex
\begin{block}{}
\begin{center}
- This spoken tutorial has been produced by the
- \textcolor{blue}{FOSSEE} team, which is funded by the
+ \textcolor{blue}{\Large THANK YOU!}
\end{center}
+ \end{block}
+\begin{block}{}
\begin{center}
- \textcolor{blue}{National Mission on Education through \\
- Information \& Communication Technology \\
- MHRD, Govt. of India}.
+ For more Information, visit our website\\
+ \url{http://fossee.in/}
\end{center}
\end{block}
#+end_latex
-