Programmeren in Python/Variabelen en gegevens: verschil tussen versies

k
geen bewerkingssamenvatting
kGeen bewerkingssamenvatting
| <code>memoryview</code> || Binair ||
|}
 
== Referenties ==
 
Zoals eerder vermeld, verwijs of refereert een variabele naar een plaats in het geheugen van de computer. Om te weten naar welke plaats in het geheugen wordt verwezen kun je de ingebouwde functie <code>id()</code> gebruiken. Bijvoorbeeld als volgt:
 
{{Code
| Taal=Python
| Titel=Getallen
| Code=
<syntaxhighlight lang="python">
a = 5
 
print(id(a))
 
</syntaxhighlight>
}}
 
'''output:'''
<pre>
140709229395136
</pre>
 
Dit stukje code heeft een variabele ''a'' met als waarde 5, als de we de ingebouwde functie <code>id()</code> gebruiken en het resultaat afprinten met <code>print()</code> kregen we hier als resultaat ''140709229395136''. De referentie kan verschillen van computer tot computer(dus hou er rekening mee dat deze code een andere output heeft op jouw computer), maar kan ook veranderen telkens keer je het stukje code draait. Er zijn echter ook uitzonderingen. Neem nu volgende stukje code die we twee keer zullen draaien.
 
{{Code
| Taal=Python
| Titel=Getallen
| Code=
<syntaxhighlight lang="python">
a = 5
b = 1000
c = "Hallo"
 
print(id(a))
print(id(b))
print(id(c))
 
 
</syntaxhighlight>
}}
 
'''eerste ouput:'''
 
<pre>
140709229395136
1920163824560
1920158780784
</pre>
 
'''tweede ouput:'''
 
<pre>
140709229395136
3006775411632
3006775226544
</pre>
 
Zoals je kunt zien heeft de variabele ''a'' twee keer dezelfde referentie, maar variabele ''b'' en ''c'' verschillende. Dit komt omdat Python voor sommige waardes standaard een plaats reserveert en altijd dezelfde plaats gebruikt. Terwijl andere variabelen telkens een andere plaats kunnen krijgen. Maar Python gaat hier nog een stapje verder in met hoe het omgaat met het geheugen van de computer. Als Python merkt dat twee variabelen dezelfde waardes bevat kan het zijn dat, hoewel die variabelen apart gedeclareerd zijn en apart waardes hebben gekregen, ze toch naar dezelfde plaats in het geheugen verwijzen. Bijvoorbeeld:
 
{{Code
| Taal=Python
| Titel=Getallen
| Code=
<syntaxhighlight lang="python">
a = 1000
b = 1000
c = "Hallo"
d = "Hallo"
 
print(id(a))
print(id(b))
print(id(c))
print(id(d))
 
</syntaxhighlight>
}}
 
'''output:'''
<pre>
1896769635248
1896769635248
1896769450160
1896769450160
</pre>
 
Zoals je kunt zien hebben variabelen ''a'' en ''b'' dezelfde refertien net zoals ''c'' en ''d''.
 
== Mutable en immutable datatypes ==
 
== Referenties ==
 
== Nieuwe functies ==
1.071

bewerkingen

Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.