0% found this document useful (0 votes)
2 views

CSC2401 Lecture 5

The document provides an overview of Python programming concepts, focusing on functions and arrays. It covers the creation, calling, and usage of functions, including parameters, arguments, and recursion, as well as the use of arrays (implemented as lists in Python) for storing multiple values. Key topics include function definitions, return values, and various methods for manipulating arrays.

Uploaded by

auwaladamuadams
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

CSC2401 Lecture 5

The document provides an overview of Python programming concepts, focusing on functions and arrays. It covers the creation, calling, and usage of functions, including parameters, arguments, and recursion, as well as the use of arrays (implemented as lists in Python) for storing multiple values. Key topics include function definitions, return values, and various methods for manipulating arrays.

Uploaded by

auwaladamuadams
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

CSC2401: Computer Programming I

(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:

Arguments are often shortened to args in Python documentations.


Parameters or Arguments?
The terms parameter and argument can be used for the same thing: information that are passed
into a function.
From a function's perspective:
A parameter is the variable listed inside the parentheses in the function definition.
An argument is the value that is sent to the function when it is called.

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:

Arbitrary Arguments are often shortened to *args in Python documentations.


Keyword Arguments
You can also send arguments with the key = value syntax.
This way the order of the arguments does not matter.

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:

Arbitrary Kword Arguments are often shortened to **kwargs in Python documentations.


Default Parameter Value
The following example shows how to use a default parameter value.
If we call the function without argument, it uses the default value:
Passing a List as an Argument
You can send any data types of argument to a function (string, number, list, dictionary etc.), and
it will be treated as the same data type inside the function.
E.g. if you send a List as an argument, it will still be a List when it reaches the function:
Return Values
To let a function return a value, use the return statement:

The pass Statement


function definitions cannot be empty, but if you for some reason have a function definition with no content,
put in the pass statement to avoid getting an error.
Recursion
Python also accepts function recursion, which means a defined function can call itself.
Recursion is a common mathematical and programming concept. It means that a function calls
itself. This has the benefit of meaning that you can loop through data to reach a result.
The developer should be very careful with recursion as it can be quite easy to slip into writing a
function which never terminates, or one that uses excess amounts of memory or processor
power. However, when written correctly recursion can be a very efficient and mathematically-
elegant approach to programming.
In this example, tri_recursion( ) is a function that we have defined to call itself ("recurse"). We
use the k variable as the data, which decrements (-1) every time we recurse. The recursion ends
when the condition is not greater than 0 (i.e. when it is 0).
To a new developer it can take some time to work out how exactly this works, best way to find
out is by testing and modifying it.
Exercise:
Create a function named my_function( )
Python Arrays
Arrays
Arrays are used to store multiple values in one single variable:

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.

You might also like