Programmeren in Python/Interactieve modus
Python kan op twee manieren werken: De normale "modus" is de modus waarin de uiteindelijke .py
files worden uitgevoerd in de python interpreter.
De interactive modus is de 'command-line shell' die directe feedback geeft voor elk statement dat wordt ingegeven, terwijl al eerder ingegeven statements in het actieve geheugen worden opgeslagen.
Om aan de slag te gaan in de interactieve modus dien je simpelweg het commando "python" in te typen, zonder extra argumenten. Dit is een goede manier om spelenderwijs vertrouwd te raken met python en syntaxvariaties uit te proberen:
$ python
Python 3.5.4 (v3.5.4:3f56838, Aug 8 2017, 02:17:05) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
(Mocht Python niet willen starten, verifieer dan je installatie en of de PATH omgevingsvariabele correct is gezet. Zie Installatie Python.)
De >>>
notatie is de Python manier om te laten zien dat je in de interactieve modus bent. In interactieve modus wordt alles wat je ingeeft direct uitgevoerd. Geef je hier nu 1+1
in, zal python antwoorden met 2
. De Interactieve modus is een goede manier om dingen uit te proberen en te zien wat Python precies doet.
Een voorbeeld van een interactieve sessie:
>>> 5
5
>>> print(5 * 7)
35
>>> "hello" * 4
'hellohellohellohello'
>>> "hello".__class__
<type 'str'>
Wees wel voorzichtig in de interactieve omgeving om verwarring te voorkomen.
Bijvoorbeeld, het volgende script is een geldig Python script:
if 1:
print("True")
print("Done")
Mocht je dit willen proberen zoals hierboven geschreven in de interactieve omgeving, zul je wellicht verbaasd zijn over het resultaat:
>>> if 1:
... print("True")
... print("Done")
File "<stdin>", line 3
print("Done")
^
SyntaxError: invalid syntax
De interpreter zegt hier eigenlijk dat de indentatie (uitlijning) van het tweede print statement niet correct is. Je had eigenlijk een blanco lijn moeten ingeven om het eerste statement (t.t.z. de "if") te beëindigen alvorens het volgende print statement te tikken. In dit voorbeeld had je de statements eigenlijk moeten als volgt ingeven:
if 1:
print("True")
print("Done")
Dit zou het volgende resultaat opgeleverd hebben:
>>> if 1:
... print("True")
...
True
>>> print("Done")
Done
>>>