Create a Python Test-Test

General
  • All right, you'll be creating a test for your hypothetical Python programming students

  • You should have a sense that your test can be done by your students in 30 minutes, including checking answers.  In reality, if a teacher makes a test too easy, she will probably have to give a much harder test later, making everyone unhappy, including the teacher. If she makes it too difficult, she can always curve it.  Gauging test difficulty is difficult.

  • It should consist of 4 major questions, preferably in increasing order of difficulty (according to you), plus one optional (for the students) Challenge question, clearly somewhat more difficult than the rest, to serve as bonus or to make up for a mistake in the previous questions.  Do not assign points to the questions.

  • Each of the questions can have sub-parts, but at least 2 of the questions should have subparts.

  • At least 2 of the 4 questions will require writing a function (or more than one).  True of the Challenge question as well.

  • Other possibilites beyond function-writing:
    • fixing incorrect code
    • filling in code that you're written parts of
    • predicting what will result when running sample code that you've written

  • Make the first question relatively easy (but not trivial), so that everyone who has been awake can start with an earned success.

  • Each question should try to test different concepts in Python, but may overlap.  The concepts tested should only be about those we covered in class.
    • correct syntax issues
    • various datatypes
    • helper functions
    • strings
    • lists
    • indexing/slicing
    • string methods
    • if/elif/else
    • while/for
    • print/return
    • errors

  • Do not copy or slightly modify homework questions or examples from class.


  • Creating creative questions is good for your students (and you, too).

Details

  • Create a PDF file from whatever text processor you use and hand that it. 

  • Put your name and period at the top.

  • Right below each question, include your answer in a different typeface (do not put all answers at the end of the test).  Give the best possibly answer (or two).  If it's wrong, a python will knock on your door.

  • Each submission will be judged on smell and taste.