Lists

Een list is makkelijk om lineaire data in op te slaan.

Een list wordt ook wel een array genoemd.

Lists zijn geordend en het is makkelijk om een specifiek item aan te roepen als je weet wat er in staat en waar.

Als je de index niet goed kent dan is het niet makkelijk of snel om te zoeken naar een item.

Dictionaries

(dia 11 t/m 24)

Dictionaries heten officieel hashmaps.

Dictionaries maken het heel makkeljjk om snel een index te vinden, ook als je die dictionary niet goed kent.

Dictionaries maken gebruik van een sleutel-waarde combinatie. Dit betekent dat twee items aan elkaar gebonden worden.

De waarde(value) kan op geroepen worden met behulp van de sleutel(key), en andersom.

Hoe roep je ze op?

  • Om de keys van een dictionary op te roepen gebruik je: dictionary.keys()
  • Om de value van een dictionary op te roepen gebruik je: dictionary.values()

Voorbeeldcodes

We kunnen een dictionary gebruiken om onze cellen/ons DNA te categoriseren:

Zo achterhaal je precies welke combinatie welke letter betekent.

Ook kan je meerdere values per key binden, dit doe je zo:

aa3 = {“Ala”: [“GCU”, “GCC”, “GCA”, “GCG”], “Arg”: [“CGU”, “CGC”, “CGA”, “CGG”, “AGA”, “AGG”], “Asn”: [“AAU”, “AAC”], “Asp”: [“GAU”, “GAC”], “Cys”: [“UGU”, “UGC”], “Gln”: [“CAA”, “CAG”] }

Kenmerken van een dictionary

  • Een dictionary is ongeordend
  • Bevat altijd een sleutel-waarde combinatie
  • De waarde mag zelf wel weer een complexe datastructuur zijn als een list, set of dictionary
  • De snelheid van het retourneren van een waarde is onafhankelijk van de grootte van de dictionary

Sets

We kunnen in Python met sets werken en met set operators bewerkingen op die sets uitvoeren.

PythonBetekenis
UnionSamenvatting
IntersectionOverlap
DifferenceVerschil

Een set maak je met het sleutelwoord set

  • Bijv: mijnSet = set([“apen”,“noten”])

Voor het toevoegen van waardes gebruik je add

  • Bijv: mijnSet.add (“miezen”)

Sets bestaan alleen uit unieke waardes, ze kunnen dus niet dubbele waardes bevatten, als dat wel gebeurt wordt de dubbele waarde verwijderd.

Set operations

Bij een symmetric_difference verkrijg je van beide sets wat niet in de overlap zit.

StatementActie
s1.union(s2)Retourneert een set alle items in s1 en s2
s1.intersection(s2)Retourneert een set van items die zowel in s1 als s2 voorkomen
s1.difference(s2)Retourneert een set van items in s1 die niet in s2 voorkomen
s1.symmetric_difference(s 2)Retourneert een set van items die niet in s1 en niet in s2 voorkomen
s1.issubset(s2)Retourneert True als alle items in s1 zich ook in s2 bevinden
s1.issupersubset(s2)Retourneert True als alle items in s2 zich ook in s1 bevinden

Kenmerken sets

  • Sets bevatten altijd unieke waardes
  • Sets zijn ongeordend: de volgorde waarin waardes voorkomen is willekeurig
  • Sets mogen zowel getallen als strings bevatten
  • Sets zijn zeer geschikt voor het vergelijken van verzameling

Serialization

Met serialization bevries je objecten (datastructuren) en kun je deze opslaan in een bestand.

Serialization heeft tot doel objecten tijdelijk op te slaan en later weer te kunnen gebruiken.

Kenmerken Serialization

  • Objecten en datastructuren worden tijdelijk opgeslagen voor gebruik later
  • In Python wordt niet gesproken over serialization maar over pickling (op zuur zetten)