4. Can we improve this
• This calculator is pretty inconvenient
• User must be prompted often
• Unfriendly interface
• Only one calculation can be performed
• Can this be improved?
5. Of course we can!
We can use 'loops' to make a much better calculator
6. Why is this better?
• We can do more than one calculation
• The user can type in a legitimate mathematical equation
• There is less confusion and clutter in the interface
7. Loops
• Loops are a great tool if you want to repeat an
action
• We are going to go over two types of loops: 'while'
and 'for'
8. While loop
A while loop checks to see if a certain condition is true, and
while it is, the loop keeps running. As soon as the condition
stops being true, the loop stops.
while statement is true:
do something
9. While example
While loop! The indents are important. They tell Python what is
still part of the loop.
23. Quick aside
str(x) will convert a number to a string. This allows you to
concatinate numbers and strings together when printing.
24. Danger
We always have a condition that will make the loop end.
What if we forget to update the condition?
!
We might create something called an infinite loop. This loop
will keep running forever, which is really bad.
28. While-else
This is similar to if-else, with an exception! The else in a while
loop will execute when the loop condition becomes false. It will
not execute if break is used.
Here's an example: we're going to generate 3 random
numbers. If one of them is a 5, you lose! Otherwise, you win.
29.
30. Challenge
We're going to make a game similar to the example on the last
slide. However, allow the user to guess what the number is
three times.
Remember, raw_input turns user input into a string, so we use
int() to make it a number again.
31. Use a while loop to let the user keep guessing so long as guesses_left is greater
than zero.
!
Ask the user for their guess.
!
If they guess correctly, print "You win!" and break.
!
Decrement guesses_left by one.
!
Use an else: case after your while loop to print "You lose."
Here's a start!
32.
33. A brief sidenote
ou might have seen that in loops I was using += and -=
These are just shorthand.
34. For loop
A 'for' loop is used when we know how many times we'll be
looping when we start. The loop will run however many times
we tell it to.
for variable in range(number):
do something
51. Challenge problem:
Fizzbuzz
Write a program that prints the numbers from 1 to 100. For
multiples of three print “Fizz” instead of the number and for
the multiples of five print “Buzz”. For numbers which are
multiples of both three and five print “FizzBuzz”.
The next slide shows what the output should look like for the
first 26 numbers.
54. What we did today
• Loops!
• While loop- don't make them infinite!
• While-else
• For loops
• For-else loops exist as well
55. Calculator revisited
Using the loops from today try to improve your calculator. Hint:
you'll probably have to use both types of loops!
!
Another hint: if you want to access a certain character of a
string you can do it like this:
string[i] = ...
i is the index of the string, starting at 0.