Zoals gevraagd en beloofd;
Python beginnerstutorial
Inhoud
Inhoud
Inleiding
Python
Datatypes
Functies
If/else
Loops
Tot slot
Inleiding
In deze tutorial ga ik proberen je de basis van Python te leren, zodat je zonder priblemen mijn andere tutorials kunt volgen, én, nog veel belangrijker, de officiële Python Tutorial kunt volgen (Link staat onderaan bij 'references')
Persoonlijk vind ik namelijk dat de officiële Python tutorial (Ook de nederlandse vertaling!) een beetje té moeilijk voor de echte beginner in Python, en die zou dan misschien stoppen met Python omdat hij het te moeilijk vindt. En dat is natuurlijk niet de bedoeling.
Verder zijn er op dit forum imho veel mensen die eigenlijk Python zouden moeten leren :p.
Python
Python is een programmeertaal die op de meeste Windows en UNIX systemen werkt. Python is een redelijk nieuwe taal, ontwikkeld door de nederlander Guido van Rossum (en natuurlijk een heleboel vrijwilligers ;) )
Python wordt vaak een 'batteries included' taal genoemd. Dat wil zeggen dat alles er ongeveer standaard inzit. Waar je in C++/VB/C/C# tientallen regels code nodig hebt voor bijvoorbeeld een webserver, kost je dat in Python slechts drie regels door de ingebouwde webserver-module te gebruiken.
Ben je enthousiast? Mooi, download Python van
hier, en installeer het.
Om je scripts te kunnen compilen, zul je Py2Exe nodig hebben, te downloaden op de website van
Py2Exe.
Als dit allemaal gelukt is kun je verder gaan met het volgende hoofdstuk, 'datatypes'.
Datatypes
Een van de eerste dingen waar je met Python mee te maken zult krijgen, zijn de verschillende datatypes. Als je al andere programmeertalen kent, zul je dit waarschijnlijk wel begrijpen, maar zo niet;
Als je in je programma'tje ergens gegevens wilt onthouden, gebruik je hiervoor
variabelen. Dat zijn een soort van containers, waar je tijdelijk dingen in op kan slaan. Mensen die PHP of C++ kunne, kennen dit waarschijnlijk onder de naam 'variabelen'.
Je hebt verschillende typen waarin je gegevens op kunt slaan:
- Strings: Worden gebruikt om zinnen in op te slaan. gewoon een soort van notititeblokje.
- Integers: Kun je alleen getallen in op slaan, en je kunt hier dan ook mee rekenen. Met Strings kun je niet rekenen!
- Floats: Hiermee kun je gook gebruik maken van getallen, maar hiermee kun je ook komma's (.) gebruiken in de getallen.
- Dictonairies: Hiermee hetzelfde als met arrays, maar hier kun je de items duidelijke namen geven.
Uitgebreidere informatie:
Strings : Een string wordt gebruikt om alle soorten gegevens in op te slaan, op deze manier maak je een string aan:
PHP-code:
nieuwestring = str('hallo')
In dit voorbeeld is de naam van de string
nieuwestring en
hallo is wat er in zit.
Integers : Worden gebruikt om mee te rekenen. Kommagetallen worden afgehakt. Dus 3.14 word 3, maar ook 3.8 wordt 3. Een Integer maak je zo aan:
De naam van de integer is
integer en de waarde is 8.
Floats : Werken precies hetzelfde als integers, met als uitzondering dat getallen met een komma niet worden afgerond. Dit type moet je dus gebruiken wanneer je met precieze getallen wilt werken. Een Float wordt zo gemaakt:
De naam van de float is 'drijvend' en de waarde is 3.2 .
Dictonairies : Worden gebruikt om meerdere gegevens in één 'woordenboek' op te slaan. Een dictonairy maak je zo aan:
Nu heb je een lege dictonairy.
Op deze manier kun je er gegevens instoppen:
PHP-code:
wb['eerste'] = 'Lekker woordenboek!'
Nu maak je een waarde aan met de naam 'eerste' en je stopt erin: Lekker woordenboek!
Met
Laat je 'Lekker woordenboek!' op het scherm verschijnen.
Natuurlijk heb je ook nog andere gegevenstypen, maar die zul je als beginner in Python nog niet meteen nodig hebben.
Functies
Python heeft een hele hoop standaard ingebouwde functies. Hieronder een lijstje met hun doel ernaast:
- print
Syntax: print 'watjewiltprinten'
Print laat tekst op het scherm verschijnen. In het voorbeeld hierboven zal 'watjewiltprinten' op het scherm verschijnen.
- raw_input()
Syntax: raw_input('Input tekstje')
raw_input vraagt de gebruiker om input. Gebruik altijd raw_input, en nooit input()! Als je input() gebruikt is dat een veiligheidsrisico voor je programma.
Het voorbeeld hierboven zal eerst 'Input tekstje' op het scherm laten zien, en daarna wachten tot de gebruiker iets heeft ingetypt en op [enter] heeft gedrukt.
- ord()
ord() maakt van een ASCII-Teken een getal
- chr()
Precies het tegenovergestelde van ord(), dit maakt van een getal een ASCII-Teken
- import naamvanlib
import importeerd een library (= een set met functies) naar je script.
- os.system(pathnaarbestand)
Voor je het os.system commando kunt gebruiken, moet je eerst os importeren, dit doe je zo:
import os
Het os.system() commando start een programma
Dit zijn natuurlijk lang niet alle functies van Python, een langere lijst vind je op;
http://ftp.python.org/doc/lib/built-in-funcs.html
If/else
Met if/else kun je commando's alleen bij een bepaalde omstandigheid uitvoeren, een voorbeeld:
PHP-code:
i = int(1) #maakt een integer [i]i[/i] aan, en geeft hem de waarde 1
if i == 1:
print "I is 1!"
else:
print "I is niet 1 :-("
De volgende regel:
if i == 1:
Kijkt of i 1 is, zo ja;
print "I is 1!"
Let op de tabs! Zonder tabs zal Python een syntaxerror geven!
Zonee (else);
print "I is niet 1 :-("
Zoals je ziet zal i altijd 1 zijn. Maar het is pas echt handig als je dingen samen met raw_input enzo gaat doen.
Loops
Soms zul je een bepaald proces meerdere keren achter elkaar willen doen. Je kunt dan natuurlijk je code een paar keer typen, maar da's niet echt handig. Beter kun je gebruik maken van loops.Loops voeren een instructie net zolang uit, totdat hun omstandigheid veranderd. Voorbeeld;
Zolang 1 gelijk is aan 1, laat zien '1 = 1!'.
Probeer het maar niet te compilen, want zoals je ziet is het pseudo code ;).
Een oneindige loop
Oneindige loops zijn handig als je iets de hele tijd moet doen. Een voorbeeld van een oneindige loop is;
Als je dit scriptje uitvoert, zal er duizenden keren 'Hallo!' op je scherm verschijnen.
Ranges
Je kunt een instructie ook een bepaald aantal keer laten uitvoeren, een voorbeeld is;
PHP-code:
for i in range(10)
print 'Hallo!'
Nu zal er 10 keer 'Hallo!' op je scherm verschijnen.
Conditionele loops
Je kunt ook loopen zolang een bepaald omstandigheid waar is.
Bijvoorbeeld:
PHP-code:
i = int()
while i < 100:
print "Hallo!"
i = int(i + 1)
Dit maakt eerst een integer i aan, en zolang i kleiner is dan 100, zal er 'Hallo!' op je scherm komen te staan. maar aangezien i elke keer 1 groter wordt, zal na 99 keer de loop stoppen.
Loops stoppen
Soms zul je een loop willen stoppen, terwijl de gegeven omstandigheid nog klopt. Hiervoor kun je het break commando gebruiken.
Tot slot
Hopelijk kun je na het lezen van deze tutorial een klein programma'tje in Python schrijven. Zonier, post het hier of stuur een PM en ik zal zien wat ik kan doen.
References:
Nederlandstalige Python Tutorial