CSC2401 Lecture 5
CSC2401 Lecture 5
(Python)
D e p a r t m e nt O f C o m p u te r Sc i n e c e ,
Fac ulty Of Comp uting A nd Mathematic al S c ienc es,
K a n o U n i ve r s i t y O f S c i e n c e A n d Te c h n o l o g y, Wu d i l K a n o – N i ge r i a .
C re d i t T o W 3 S c ho ol s , m a i n s o ur c e o f t h e se s l i de s
Contents
❑ Python Functions
▪ Creating a Function
▪ Calling a Function
▪ Arguments
▪ Parameters or Arguments?
▪ Default Parameter Value
▪ Passing a List as an Argument
▪ Return Values
▪ Recursion
❑ Python Arrays
▪ What is an Array?
▪ Access the Elements of an Array
▪ The Length of an Array
▪ Looping Array Elements
▪ Adding Array Elements
▪ Removing Array Elements
▪ Array Methods
Python Functions
A function is a block of code which only runs when it is called.
You can pass data, known as parameters, into a function.
A function can return data as a result.
Creating a Function
In Python a function is defined using the def keyword:
Calling a Function
To call a function, use the function name followed by parenthesis:
Arguments
Information can be passed into functions as arguments.
Arguments are specified after the function name, inside the parentheses. You can add as many arguments as you
want, just separate them with a comma.
The following example has a function with one argument (fname). When the function is called, we pass along a
first name, which is used inside the function to print the full name:
Number of Arguments
By default, a function must be called with the correct number of arguments. Meaning that if
your function expects 2 arguments, you have to call the function with 2 arguments, not more,
and not less.
If you try to call the function with 1 or 3 arguments, you will get an error:
Arbitrary Arguments, *args
If you do not know how many arguments that will be passed into your function, add a * before
the parameter name in the function definition.
This way the function will receive a tuple of arguments, and can access the items accordingly:
The phrase Keyword Arguments are often shortened to kwargs in Python documentations.
Arbitrary Keyword Arguments, **kwargs
If you do not know how many keyword arguments that will be passed into your function, add
two asterisk: ** before the parameter name in the function definition.
This way the function will receive a dictionary of arguments, and can access the items
accordingly:
Note: Python does not have built-in support for Arrays, but Python Lists can be used instead.
Note: This page shows you how to use LISTS as ARRAYS, however, to work with arrays in Python you
will have to import a library, like the NumPy library.
What is an Array?
An array is a special variable, which can hold more than one value at a time.
If you have a list of items (a list of car names, for example), storing the cars in single variables
could look like this:
However, what if you want to loop through the cars and find a specific one? And what if you
had not 3 cars, but 300?
The solution is an array!
An array can hold many values under a single name, and you can access the values by
referring to an index number.
Access the Elements of an Array
You refer to an array element by referring to the index number.
The Length of an Array
Use the len( ) method to return the length of an array (the number of elements in an array).
Note: The length of an array is always one more than the highest array index.
Looping Array Elements
You can use the for in loop to loop through all the elements of an array.
Adding Array Elements
You can use the append( ) method to add an element to an array.
Removing Array Elements
You can use the pop( ) method to remove an element from the array.
You can also use the remove( ) method to remove an element from the array.
Note: The list's remove( ) method only removes the first occurrence of the specified value.
Array Methods
Python has a set of built-in methods that you can use on lists/arrays.
Note: Python does not have built-in support for Arrays, but Python Lists can be used instead.