Download - Python (yay!)

Transcript
Page 1: Python (yay!)

Python (yay!)

November 16, Unit 7

Page 2: Python (yay!)

Recap

• We can store values in variables using an assignment statement>>>x = 4 + 8

• We can get input from the user using raw_input()

>>>name = raw_input(“Enter your name”)• We can change the data from one type to

another

>>>num = int(raw_input(“Enter a number”))

Page 3: Python (yay!)

Conditional Statements

• So far the programs we’ve written are pretty boring

• Like with XSL we can use conditional statements to do more

• Basically conditional statements check to see if something is true. – If it is true, some code is executed– Perhaps if its not true, different code is executed

• Simplest conditional statement is the “if” statement

Page 4: Python (yay!)

The If Statement

• The if statement in Python works just like the if statement in XSL– The syntax is different– Concept is the same

• If the number is less than 5, print “that number is less than 5”

• If the name is “C.S.Lewis”, print “this book is by C.S.Lewis”

Page 5: Python (yay!)

If Statement, cont.

num = int(raw_input(“Enter a number less than 10”))

if num>10:

print “That number is bigger than 10. You can’t follow directions”

print “Thanks for playing!”

Page 6: Python (yay!)

If, cont.

• The syntax for the if statement is as follows:if expression:

code• The code you want executed if the expression is true

must be indented– This is the body of your if statement

• Spacing is important in python– You should indent consistently– Convention is to indent 4 spaces (use the tab)

• When you stop indenting, the body of the if statement is considered to be done– The code after the indention will execute no matter what

Page 7: Python (yay!)

In-Class Example

• Using if statements

Page 8: Python (yay!)

Boolean Expressions

• When we use an if statement, the result of the expression is either true or false– if 4<3: (false)– if 3<4: (true)

• The result of the expression must be true or false

• Otherwise it doesn’t make sense• These are called boolean expressions• The two boolean values are “true” and “false”

Page 9: Python (yay!)

Boolean Values, cont.

• Boolean values in python (like most languages) are stored as integers

• 0 represents false– 4<3 as an expression has the value 0

• Any other integer (usually 1) represents true– 3<4 has the value of 1

• You can actually write code like:if 1:

……if 5:

…….

Page 10: Python (yay!)

Boolean Expressions

• We’re pretty used to seeing <, <=, >, >= in conditional statements– They make sense and read just like regular English

• What if we want to check if something is equal to something else?– if 4-3 = 1:

• This is an assignment statement• Does not check to see if 4 minus 3 equals 1

• We need to use the == operator– if 4-3 ==1:

• If we want to check if two items are not equal use the != operator- if 4-2!=1:

Page 11: Python (yay!)

Else Clause

• In XSL we can use <xsl:choose>, <xsl:when>, and <xsl:otherwise>– This provides us with a sort of if, else if, else if….else

structure• Python has something similar• We can use the else clause to provide a sort of

“if not”If 3<4 then print “woohoo”else print “darn. I don’t know math”

• Code inside the else clause will be executed only if the expression in the if statement evaluates to false

Page 12: Python (yay!)

If Else Example

guess = int(raw_input(“Pick a number between 1 and 10”))

if guess<=10:

print “Good job!”

else:

print “Can’t you follow directions!?”

Page 13: Python (yay!)

In-Class Example

• Example using if/else

• Example using strings

Page 14: Python (yay!)

elif block: Else if

• The if/else structure is pretty useful• There is one more component to this

structure: the “else if” block• Basically we can now write code that

reads something like:– if, else if, else if, …..,else

• To use an else if structure we need the word “elif”– elif requires an expression (just like if)

Page 15: Python (yay!)

Elif Example

if guess== number:

print “you guessed it!”

elif guess< number:

print “that’s too low”

else:

print “that’s too big!”

Page 16: Python (yay!)

In-Class Example with elif

• Changing the number guessing game to use elif

• Inventory with elif

Page 17: Python (yay!)

We Can Nest “if” Statements

• We can nest if statements inside other if statements– Or inside elif statements– Or inside else statements– Basically anywhere

• Remember that nested ifs are only executed if the outer ifs are evaluated as true

Page 18: Python (yay!)

In-Class nested If example

• Checking to be sure the number is within range

Page 19: Python (yay!)

Random Number

• So far we have had to pre-select a number for the user to guess– num = 7– It’s the same every time– Pretty boring once you guess the number

• It would be better if every time we ran the program it chose a random number for us to guess

• In order to use random numbers it requires two parts:– Importing the random module– Using a function from the random module to generate

our random number

Page 20: Python (yay!)

Random Numbers, cont.

import randomnum = random.randint(1,10)

• Import tells python to include the random module– There are lots of modules– More on this later

• random.randint(1,10)– In the random module, use the randint function to select a

random number between 1 and 10– This is assigned to the variable num

• random.randint(5, 50)– Select a random integer between 5 and 50

Page 21: Python (yay!)

In-Class Example

• Adding a random number to our guessing game

Page 22: Python (yay!)

Libraries

• It would stink if every time we needed a random number we had to write the code to produce one

• Or how about something like calculating the sin of a number

• Or the square root• With most programming languages some functions are

included with the language– These are usually grouped into libraries– We only have to import the libraries or modules we need– If we imported every module it would take a long time to run

• In python, all of the prepackaged functions are considered to be part of the python library– The individual parts we will import will be modules or libraries

• Terms are pretty much interchangeable– Slightly different terminology from other languages

Page 23: Python (yay!)

Modules

• When we needed the random number we had to import the random module

• The random module contains a function called randint() which is what actually gives us the random number

• The syntax for importing a module is:import moduleName

• We only import the modules we need

Page 24: Python (yay!)

Accessing Functions in Modules

• To use a function found in a module we have to use the following syntax:

moduleName.functionName(…)• There are a lot of modules

– There is a link to the reference on the course page

• Some of the common ones are random, math, and cmath

• We’ll be covering many more modules

Page 25: Python (yay!)

In-Class Example

• Import the string module

• Use it to uppercase an entire string

Page 26: Python (yay!)

Questions?

• What you should get from this lecture:– If statements– else clause– elif clause– Nesting if statements– How to produce a random integer– How to access functions in modules


Top Related