From f1371b041454f74cf16acc31482999debad90d03 Mon Sep 17 00:00:00 2001 From: cprutean <cip.pruteanu@ed.ac.uk> Date: Wed, 18 Sep 2024 12:53:20 +0100 Subject: [PATCH] Delete FunctionsAndLists.ipynb --- CourseNotes/FunctionsAndLists.ipynb | 68 ----------------------------- 1 file changed, 68 deletions(-) delete mode 100644 CourseNotes/FunctionsAndLists.ipynb diff --git a/CourseNotes/FunctionsAndLists.ipynb b/CourseNotes/FunctionsAndLists.ipynb deleted file mode 100644 index bdb94ff..0000000 --- a/CourseNotes/FunctionsAndLists.ipynb +++ /dev/null @@ -1,68 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We have seen in that functions basically *do what you expect*, and in\n", - "particular the variables *inside* the function are seperate from those\n", - "in the program. This is true for the basic build-in types (, , and ),\n", - "but you have to be *very careful* when you pass s into functions.\n", - "\n", - "Consider what happend in the following code where the function sets a\n", - "given with random numbers.\n", - "\n", - "def set_random_list(lst): \"\"\" Function to set a list full of random\n", - "numbers. \"\"\" for i in range(0,len(lst)): lst\\[i\\] = random.random()\n", - "\n", - "def main(): xdata = \\[0.0\\]\\*100 set_random_list(xdata)\n", - "\n", - "main()\n", - "\n", - "Now consider what happens,\n", - "\n", - "- in the program we create a list of 100 s, all set to zero,\n", - "\n", - "- then this is passed to the function the is sent to the function,\n", - "\n", - "- inside the function the data *held* in the is the same as the data\n", - " in the , so if you change the values of the elements of the list\n", - " inside then they *will* change in .\n", - "\n", - "- in , after the call to the *elements* of the list will be set to\n", - " random numbers.\n", - "\n", - "This operation of functions *is* typically what you want to happen, but\n", - "you have to be very careful that you really intend to modify the\n", - "contents of a list inside the function.\n", - "\n", - "The way that numbers operate need a bit of through on how they work, if\n", - "you have a function as below that a ,\n", - "\n", - "def complex_value_compare( a , b): if a.real \\> b.real and a.imag \\>\n", - "b.imag: return a + b else: return a - b\n", - "\n", - "then this will work exactly as you expect and you can *read* the real\n", - "and imaginary parts of the arguments with the and syntax. *BUT* beacuse\n", - "of the way the number is passed you are not able to write to the real\n", - "and imaginary parts by this route, this means that althought a complex\n", - "number looks like a of two numbers, it cannot be changed inside a\n", - "function.\n", - "\n", - "webonly\n", - "\n", - "The There is a variant on the list called a which holds multiple\n", - "elements just like a , is indexed by the same syntax for read *but*\n", - "cannot be wrtten to, so its values are *fixed*. This is not frequently\n", - "used in normal *user* programs, but is used inside complex libraries to\n", - "implement constants.\n", - "\n", - "You have now completed sufficient to attempt which is the last\n", - "checkpoint of the course." - ] - } - ], - "nbformat": 4, - "nbformat_minor": 5, - "metadata": {} -} -- GitLab