250 likes | 326 Views
CS 177 Week 4 Recitation Slides. Variables, Files and Functions. Announcements. ANY QUESTIONS?. Table of content. Variables Files Functions What is a function? Why to use a function?. Are names for objects that have values in main memory.
E N D
CS 177 Week 4 Recitation Slides Variables, Files and Functions
Table of content Variables Files Functions What is a function? Why to use a function?
Are names for objects that have values in main memory. • We define variables by assigning values to names: • Example: • >>>a = 9 • >>>b = 13.54 • >>>c = “Computer” • Variables can change their values during the program. • It’s important to choose good names that describes the variable. Example: firstName, courseNo, etc. Variables
Variable Value • Example: • X = 10 • Variable is also called Left Hand Side. • Value is also called Right Hand Side. Assignment Statement
Variable Value • The value can be: a number, a string of characters, but also a variable, or an expression. • Example (decimal integer numbers): • X = 10 • Y = X • Y = X + 5 • Z = Y Assignment Statement
What is the output of the following statements: >>> X = 10 >>> Y= 20 >>> result = X+ Y >>> print result >>> Y= 100 >>> print x + 10 >>> print x >>> print y Example 1 20 100 X Y 10 result 30 30 output 20 10 100
John Jane >>> name = “John” >>> price = 9.99 >>> total = price / 3.0 >>> name = “Jane” >>>print name >>>print price >>>print total Exercise 1 name price 9.99 3.33 total output Jane 9.99 3.33
“University” “Purdue” >>> var1 = “Purdue” >>> var2 = “University” >>>print var1 >>>print var2 >>>var2 = var1 >>>print var1 >>>print var2 Exercise 2 “Purdue” var1 var2 output Purdue University Purdue Purdue
>>> X + 2 = 15 • >>> Y = “Hello” + 10 • Tips: • Left Hand Side should always be a variable • You can’t perform operations (such as sum) on two values of different types (numeric and string) What about …
Files • Are collection of larger objects and values (byte) on the hard disk of the computer. • Files can contain text, picture, sound, video, etc. • Files have names • File names have suffixes (.jpg, .wav, .mp3, and so forth)
Functions • Collection of instructions that perform a task as: • Printing your name and course. • Calculating the average of set of numbers. • Editing a picture or video.
Like in algebra, a function is a kind of “box” into which you put one value and out comes another. We represent (“denote”) a function by a name (in math we use f or F). Functions output Input F
Why to use a function? • If we define a function to perform a task, then we will write it once then we can use it (or call it) many times.
def functionName(): statement #1 statement #2 … How to write functions?
def SayHello: print(“Hello world!”) print(“--From Python”) Note: 1. Never forget the colon(:) 2. Align the statements in one function
No input arguments, no variable returned • def Greet(): print("Hello Jack") print("Hello Tom")def main(): Greet()
Multiple arguments, returns one result • def Average(a, b): return (a+b)/2def main(): ave = Average(3, 4)
Returns more than one variable • def getabc(): a = "Hello" b = "World" c = "!" return a,b,cdef main(): a, b, c = getabc()
def Sum(a, b, c): return (a+b+c)def Greet(name, GPA): print("Hello", name) print("You have a GPA of ", GPA)def Div(a, b): return a/bdef Mul(a, b): return a*bmain()
# assign values to variables G1 = 4 G2 = 3.7 G3 = 3.7 C1 = 3 C2 = 1 C3 = 2 name = "Tom“
GPA = Div(Sum(Mul(G1, C1), Mul(G2, C2), Mul(G3, C3)), Sum(C1, C2, C3)) Greet(name, GPA) input() • The output of Mul() is input of Sum() • The output of Sum() is the input of Div()
What can go wrong? If your parrot is dead, consider this: Did you use the exact same names (case, spelling)? All the lines in the block must be indented,and indented the same amount. Variables in the command area don’t exist in your functions, and variables in your functions don’t exist in the command area. The computer can’t read your mind. It will only do exactly what you tell it to do. In fact, programs always “work,” but maybe not how you intended!