Programmeren in Python/Variabelen en gegevens: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
Regel 197:
== Type Hinting ==
 
In tegenstelling tot vele andere programeertalen kun je in Python niet expliciet zeggen welk soort datatype een variabele moet bevatten. Een variabele kan dus zowel mogelijk een <code>str</code> als een <code>int</code> zijn, wat toch wel twee verschillende soorten datatypes zijn. Dit kan serieuze gevolgen hebben als je bijvoorbeeld bij een variabele een <code>int</code> waarde geeft, om later in je script het als een <code>str</code> te gebruiken of omgekeerd.
 
Stel we hebben de variabele ''day'', ''month'', ''year'' om in onze code een datum te omschrijven. Bij ''day'' en ''year'' kun je er redelijk van uitgaan dat we getallen gaan gebruiken, maar wat met ''month''? Gaan we ''4'' gebruiken of het woord ''april''? Misschien heb je de rest van je code zo geschreven dat het eigenlijk niets uitmaakt, maar misschien ook niet. Als het toch een verschil zou uitmaken kun je ''type hinting'' gebruiken. Bijvoorbeeld als volgt:
Regel 212:
}}
 
''Type hinting'' doe je door de naam van de variable te schrijven, gevolgd door een dubbele punt(:), met daarachter het verwachte datatype. Door aan ''Type hinting'' te doen geef je, zoals de naam ook aangeeft, enkel een hint van wat het datatype zou moeten zijn van de waarde die we in een variabele stoppen. We kunnen nog steeds een ander datatype in onze variabele stoppen. ''Type hinting'' is vooral handig wanneer we het gebruiken in combinatie met een ''IDE'', die kunnen dan tijdens het programmeren waarschuwingen geven als we een variabele incorrect gebruiken. Het is dus prima mogelijk om het volgende te doen:
 
{{Code
Regel 225:
}}
 
Het script zal nog steeds werken wanneer we andere soorten datatypes in de variabelen stoppen dan er wordt aangegeven door de hint. Natuurlijk als we later in het script de variabelen gebruiken op een manier dat niet passen met diede datatypes kan Python een ''Error'' geven.
 
''Type hinting'' is redelijk nieuw in Python en wordt pas ondersteund vanaf Python 3.5, houd er dus rekening mee dat dit niet werkt in oudere versies van Python.
Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.