## Week 16 agenda -- last class and quiz

11 Dec 2011

We'll have one last quiz, which will cover all the major Python concepts we've talked about:

• variables and types
• for loops
• lists
• conditionals
• working with files

You'll have to have all homework in by Thursday night.

### Quiz examples

1. Recall that sys.argv is a list containing all the words you type on the command line. What does the following program do?

import sys
num = 1
for x in sys.argv:
print(num, x)
num = num + 1

2. Fill in the definition of the following function so that it prints even if the input is an even number, and odd if the input is an odd number. The % operator can be used to compute the remainder when dividing one number by another -- for example, 11 % 3 gives 2, because 11 divided by 3 has remainder 2.

def print_parity(x):
...

3. Explain in words (you don't have to write any code) how to write a program that reads a file, and then overwrites the file with the same contents except all in uppercase.

4. What is the value of x at the end of the following program?

a = 1
b = 2
if a > b:
x = a
else:
x = b

5. Write a function that takes 2 numbers as input and returns the largest of the 2 numbers.

6. Fill in the following function so that it takes as list of numbers as input, and returns a new list consisting of the original numbers that were positive.

def positives(numbers):
output = []
for n in numbers:
if ...:
...
return ...

7. Define a function called triangle that prints a triangle of height n when given input n. For example, triangle(4) should print something like:

*
**
***
****