Difference between revisions of "NicelyDocumentedProgram.py"

From dftwiki3
Jump to: navigation, search
Line 44: Line 44:
 
main()
 
main()
 
</source>
 
</source>
 +
[[Category:CSC111]]

Revision as of 16:32, 3 February 2010

--D. Thiebaut 14:41, 29 January 2010 (UTC)

# hw3b.py
# Jane Doe  111a-as
# ( edited by D. Thiebaut )
# this program prints a random poem as many times as
# the user chooses.
#
# each poem is made from a random subject, random adverb,
# random verb, random location, and random time.
# The program keeps a collection of subjects, adverbs, verbs,
# locations and times.
#
from random import randrange

def main():
   #--- ask user for number of poems ---
   print "Welcome to Random Poems of the Day!"
   noPoems = input("How many poems would you like me to write? ")
   print

   #--- create lists of poem elements ---
   subjects   = ['Kep', 'Ford Prefect', 'Albus Dumbledore', 'Madeline LEngle']
   adverbs    = ['quietly', 'vehemently', 'surprisingly', 'naturally', 'explosively']
   verbs      = ['exfoliates', 'defenestrates', 'drinks peppermint tea']
   locations  = ['in Chicago', 'by the statue of the one-eyed witch',\
                  'under my desk']
   times      = ['around teatime', 'before breakfast', 'during quiet hours',\
                 'while watching House']
   collection = [ subjects, adverbs, verbs, locations, times ]

   #--- print all the poems, each one randomly picked ---
   for i in range( noPoems ):

      #--- pick a group of words ---
      for group in collection:
         count = len( group )             # total # words in group
         randomIndex = randrange( count ) # random index less than count
         print group[ randomIndex ],      # just print random word at that index
      print
      print
   
main()