Wat is de link tussen Shakespeare en stanozolol?
Ben Jonson, Engelse toneelschrijver uit de Renaissance.

Quizen is in Vlaanderen een vrij populair tijdverdrijf. In 2011-2012 werd rond het fenomeen een hele fictieserie uitgezonden op de Vlaamse televisie. Quiz me quick vertelt het verhaal van een groepje uiteenlopende karakters die het tot quizkampioenen schoppen.

Quiz me quick
Quiz me quick

Quiz me quick, 2011.

Deelnemen aan een quiz is eenvoudig. Je geeft de naam van je team en je teamleden op bij de organisatie van de quiz. De IT-er van dienst houdt alle teams en deelnemers bij in een dictionary:

{
  'Sinbox': ['An', 'Tom', 'Griet'],
  'Levies': ['Fien'],
  'Quist Het': ['Jens', 'Lies', 'Jesse'],
  'verKWISting': ['Renzo', 'Jan', 'Annelies']
}

Opgave

In deze oefening programmeren we het in- en uitschrijven bij een quizploeg omdat een deelnemer toevallig niet kan deelnemen op de avond van de quiz maar toch zo vriendelijk is om een vervanger te voorzien.

De functies verlaat_ploeg en vervoeg_ploeg hebben beide drie parameters:

  1. De naam van een deelnemer die de ploeg verlaat of vervoegt.
  2. De ploeg die verlaten of vervoegd wordt
  3. Een dictionary van inschrijvingen.

Wanneer een speler een ploeg verlaat mag je zeker zijn dat de deelnemer bij de gegeven ploeg ingeschreven was. Een onbestaande deelnemer uitschrijven bij een onbestaande ploeg kan dus niet. Een niet-gekende speler inschrijven bij een onbestaande ploeg kan wel. In een ploeg kunnen twee deelnemers nooit dezelfde naam hebben.

Beide functies geven de vernieuwde dictionary van inschrijvingen terug.

Voorbeeld

>>> verlaat_ploeg('Tom','Sinbox',{'Sinbox': ['An', 'Tom', 'Griet'], 'Levies': ['Fien'], 'Quist Het': ['Jens', 'Lies', 'Jesse'], 'verKWISting': ['Renzo', 'Jan', 'Annelies']})
{'Sinbox': ['An', 'Griet'], 'Levies': ['Fien'], 'Quist Het': ['Jens', 'Lies', 'Jesse'], 'verKWISting': ['Renzo', 'Jan', 'Annelies']}
>>> verlaat_ploeg('Fien','Levies',{'Sinbox': ['An', 'Griet', 'Els'], 'Levies': ['Fien'], 'Quist Het': ['Jens', 'Lies', 'Jesse'], 'verKWISting': ['Renzo', 'Jan', 'Annelies']})
{'Sinbox': ['An', 'Griet', 'Els'], 'Quist Het': ['Jens', 'Lies', 'Jesse'], 'verKWISting': ['Renzo', 'Jan', 'Annelies']}

>>> vervoegt_ploeg('Els','Sinbox',{'Sinbox': ['An', 'Griet'], 'Levies': ['Fien'], 'Quist Het': ['Jens', 'Lies', 'Jesse'], 'verKWISting': ['Renzo', 'Jan', 'Annelies']})
{'Sinbox': ['An', 'Griet', 'Els'], 'Levies': ['Fien'], 'Quist Het': ['Jens', 'Lies', 'Jesse'], 'verKWISting': ['Renzo', 'Jan', 'Annelies']}
>>> vervoegt_ploeg('Fien','Levies',{'Sinbox': ['An', 'Griet', 'Els'], 'Quist Het': ['Jens', 'Lies', 'Jesse'], 'verKWISting': ['Renzo', 'Jan', 'Annelies']})
{'Sinbox': ['An', 'Griet', 'Els'], 'Quist Het': ['Jens', 'Lies', 'Jesse'], 'verKWISting': ['Renzo', 'Jan', 'Annelies'], 'Levies': ['Fien']}