Python programmeren

Beste programmeurs (en andere voorbijgangers),

In verband met mij toekomstige stageplek wil ik me graag verdiepen in Python. Ik had er eerst nog nooit van gehoord, maar het schijnt niet de moeilijkste taal te zijn en het lijkt me reuze interessant. Ik heb eens even wat rond gezocht op het internet en heb onder andere deze handige website gevonden, die me enigzins/flink op weg kan helpen.

Nu zag ik dat je python kunt downloaden. De nieuwste versie is er alleen niet als installer voor OS X. Je moet hem dan compilen, maar dat zegt me helemaal niets. Kan ik dat gemakkelijk zelf doen?

Daarnaast vraag ik me af of er ook ergens een Python forum is. Dit mag in het engels, liefst nederlands natuurlijk. Ik heb tot nu toe alleen maar mailing lists en user groups gevonden. Natuurlijk kan ik mijn vraag hier posten, maar het is maar de vraag hoeveel Python gebruikers hier zijn. We zullen zien… :slight_smile:

Alvast bedankt voor de reacties.

Ik weet niet of het ook op je mac staat als je de Developer Tools niet geinstalleerd hebt maar als je ze wel hebt staat python ook gewoon op je mac (dus al geinstalleerd)

bv. [code:1:7befde145a]user$ python[/code:1:7befde145a]
en je zit in python

[quote:0c78ebbf39="junkiesxl"]Ik weet niet of het ook op je mac staat als je de Developer Tools niet geinstalleerd hebt maar als je ze wel hebt staat python ook gewoon op je mac (dus al geinstalleerd)

bv. [code:1:0c78ebbf39]user$ python[/code:1:0c78ebbf39]
en je zit in python[/quote:0c78ebbf39]

Hee, dat is leuk om te weten. Ik heb overigens niet de Developer Tools geinstalleerd, maar het werkt wel. Wat voor programma’s kun je bijvoorbeeld voor Python gebruiken. Ik gebruik SubEthaEdit als editor, en die ondersteunt ook Python. Maar hoe kan ik bijvoorbeeld de code uitvoeren? Ik heb redelijke kennis van PHP. Om dat te kunnen uitvoeren heb je Apache nodig met een PHP module. Hoe gaat dat bij Python?

Python onder MacOS X wordt geinstalleerd als je de BSD kit selecteerd (ik geloof dat dit al niet eens meer een optie is bij Tiger).

Python code kan je uitvoeren op verschillende manieren. In de meeste gevallen doe je dat via de Terminal. Het meest simpele voorbeeld:

[code:1:05efa4b8b6]
maurice@blueice $ echo “print ‘Hello World!’” > test.py
maurice@blueice $ python test.py
Hello World!
[/code:1:05efa4b8b6]

of je maakt een python scriptje als:

[code:1:05efa4b8b6]
#!/usr/bin/env python
print ‘Hello World!’
[/code:1:05efa4b8b6]

die je in de terminal executeable maakt:

[code:1:05efa4b8b6]
maurice@blueice $ chmod +x test.py
maurice@blueice $ ./test.py
Hello World!
[/code:1:05efa4b8b6]

Natuurlijk, je kan ook MacOSX applicaties maken in Python, maar daarvoor heb je PyObjC voor nodig. De MacOSX.nl Applet is bijvoorbeeld in Python + PyObjC geschreven.

Ok, dat zegt me nog niet zo heel veel. Stel dat ik bijvoorbeeld een Python script schrijf met SubEthaEdit. Hoe kan ik dat script dan uitvoeren? En ik moet het dus opslaan als script.py?

Ja en dan doen wat P|n zegt, opent je terminal typt chmod +x sleept dan je script erin (zo heeft ie het juiste path), duwt return, typt een ./ en sleep weer je script erin en duw return

of kortom

[quote:3301b05c8f][code:1:3301b05c8f]maurice@blueice $ chmod +x test.py
maurice@blueice $ ./test.py
Hello World![/code:1:3301b05c8f][/quote:3301b05c8f]

[quote:ece51fd1a5="junkiesxl"]Ja en dan doen wat P|n zegt, opent je terminal typt chmod +x sleept dan je script erin (zo heeft ie het juiste path), duwt return, typt een ./ en sleep weer je script erin en duw return

of kortom

[quote:ece51fd1a5][code:1:ece51fd1a5]maurice@blueice $ chmod +x test.py
maurice@blueice $ ./test.py
Hello World![/code:1:ece51fd1a5][/quote:ece51fd1a5][/quote:ece51fd1a5]

En dan rolt er een executable uit? Wat voor bestand is dat? En wat gebeurt er met die “Hello World!”? Sorry voor de lastige vragen, maar ik wil hier graag wat helderheid in.

Ik zal proberen te herhalen wat p|n heeft gedaan maar dan met behulp van BBEdit

In BBEdit maak je een document aan en typt hierin [code:1:a4273b7c3c]#!/usr/bin/env python
print ‘Hello World!’ [/code:1:a4273b7c3c]

Dit bewaar je als test.py in je thuismap ( je mag het overal bewaren maar dit is het makkelijkste). Nu heb je twee opties ofwel laat je BBedit het runnen ofwel doe je het zelf in de terminal.

Optie 1: BBedit

Je kiest uit het #! menu, run et voila daar komt de output van je programma (wat je nu hebt geschreven is een programma dat de tekste “Hello Wold” weergeeft

Optie 2: De Terminal

(Hier schiet mijn kennis tekort want ik kan het niet laten runnen door bij BBedit uit het menu te kiezen Run in terminal)
Maar de oude vertrouwde methode werkt wel nl.

[code:1:a4273b7c3c]piet$ chmod +x test.py
piet$ ./test.py
[/code:1:a4273b7c3c]

Wat dit doet met chmod maak je het executable en met de ./ zorg je er voor dat ie uitgevoerd wordt

PS: Ken zelf bijzonder weinig van python maar dit werkt als shell scripts en daar ken ik wel iets van

Dat is een handige optie in BBEdit. Ik heb het programma al eens geprobeerd, maar ik vond SubEthaEdit veel handiger. Ik zal het dan toch nog maar eens proberen.

Maar er zijn nog een paar dingen die nog niet helemaal duidelijk zijn. Je hebt dat test.py bestand. Wanneer je dat executable maakt, krijg je dan een nieuw bestand? Ik neem aan van wel, omdat je misschien anders het origineel niet meer kunt aanpassen. En zo ja, kun je dan het nieuwe bestand ook dubbelklikken om het uit te voeren?

Dan heb je het stukje “#!/usr/bin/env python”. Kan ik dit vergelijken met “<?php” in een php code?

Bedankt voor de duidelijke beantwoording.

Ook al maak je het exectuble (moeha laat deze typo gewoon staan :) ) dan kun je het nog gewoon editen, kzou trouwens als Sub EthaEdit makkelijker werkt voor jou bij die blijven en gewoon de terminal gebruiken voor het te runnen.

Een beetje ervaring met de terminal opdoen is nooit slecht, kan je nog een hoop tijd schelen als je er een keer mee weg bent (of zelfs maar half weg zoals mij :slight_smile: )

[quote:19c268f0bf="junkiesxl"]Ook al maak je het exectuble (moeha laat deze typo gewoon staan :) ) dan kun je het nog gewoon editen, kzou trouwens als Sub EthaEdit makkelijker werkt voor jou bij die blijven en gewoon de terminal gebruiken voor het te runnen.

Een beetje ervaring met de terminal opdoen is nooit slecht, kan je nog een hoop tijd schelen als je er een keer mee weg bent (of zelfs maar half weg zoals mij :slight_smile: )[/quote:19c268f0bf]

Ok, bedankt voor het antwoord, maar zou je mijn andere vraag ook kunnen beantwoorden? Dus of ik het stukje “#!/usr/bin/env python” kan vergelijken met “<?php” in een php code?

[code:1:52130af038]piet$ chmod +x test.py piet$ ./test.py [/code:1:52130af038]

Jongens, ik weet niet waar jullie dit vandaan halen, maar het werkt niet! Wat wel werkt is gewoonweg het bestand in de terminal slepen en op enter drukken. Weet ik meer dan jullie?! :wink:

Ik ben momenteel [url=http://www.andamooka.org/reader.pl?pgid=thinkpythochap01]Deze zeer fijne tutorial[/url] aan het doorwerken (Engels). Het lijkt best wel veel op PHP. Het heeft een hele mooie opbouw vind ik.