Python kezdőknek, 1. lecke
2011. december 1. csütörtök itt: Útmutató

Üdvözöllek a kurzuson!
Az eredeti kurzus Akkana Peck munkája, és a http://linuxchix.org-on található illetve Akkana oldalán: http://shallowsky.com/python
Ez a kurzus kezdőknek illetve olyan embereknek szól, akik csak kevés programozói tapasztalattal rendelkeznek, de bárkit szívesen látunk. Az eredeti kurzus a Python 2-es verziójáról szólt, a fordítás során viszont Hajninak köszönhetően bekerültek a Python 3-ra vonatkozó magyarázatok illetve forráskódok. A legtöbbször két blokkot láthattok egymás alatt, ekkor a felső Python 2-re vonatkozik, az alsó Python 3-ra. Ha csak egy blokk van, akkor a két verziónál ugyanaz a kód használható.
Fordítással kapcsolatos észrevételeket nekem (grus) jelezd akár privát üzenetben, akár hozzászólásban.
A lektorálásért köszönet illeti Bettit, Gyaraki Lászlót és Lukibenit, a Python3-as kódokért pedig Hajnit!
Szövegszerkesztők és egyéb eszközök
A kurzus során a programokat szövegszerkesztőben fogjuk írni. Nem használhatunk dokumentumszerkesztőket (például LibreOffice-t), mert ezek különleges formázó kódokat használnak, amiknek Pythonban nincs értelme.
Hallani fogsz programozókat végeláthatatlanul vitatkozni arról hogy vim vagy emacs, de ne foglalkozz vele. Bármilyen szövegszerkesztőt használhatsz. Valószínűleg már telepítve van a gedit a számítógépedre, ha Gnome-ot használsz, vagy a Kate, ha KDE-t. Számos egyéb lehetőséged is van: használhatsz akár nano-t, pico-t vagy leafpad-ot is.
A kurzus során feltételezzük azt, hogy a többség Linuxot használ. A Python példáknak persze működniük kellene bármilyen platformon, de lehetséges, hogy néha lesznek megjegyzések, azzal kapcsolatban, hogy egyéb platformon milyen változtatás szükséges. Például a Mac vagy Windows felhasználóknak más szövegszerkesztők állnak rendelkezésére, mint a fent említettek.
Parancssorban fogunk dolgozni a kurzus során. Nyissunk hát egy terminált és vágjunk bele!
Python verzió
Először is bizonyosodjunk meg róla, hogy a Python telepítve van. Gépeljük be a terminál ablakba az alábbit:
python --version
Valami ilyesmit kellene látni: Python 2.6.5
A Python 3 széleskörben még nem teljesen elfogadott és jó néhány változtatás van benne a 2-eshez képest. A 3-hoz tartozó kódokat, illetve magyarázatot piros színnel jelöljük
Ha 3-as verziónk van, akkor valószínűleg emellett van 2-es is telepítve. Derítsük ki ezt, gépeljük be a terminálba:
python
A python szó után közvetlenül üssünk egy pár tabot.
A parancsértelmező automatikusan kiegészíti a parancsot, így látni fogjuk az összes elérhető python verziót. Ha ezek közül bármelyik 2-vel kezdődik, akkor azt használjuk a továbbiakban. Például, ha amikor azt írom gépeljük be a python –version parancsot, akkor ehelyett a python2 –version vagy python2.6 –version parancsot kell begépelni.
Programok írása és futtatása
Itt az idő, hogy nekiálljunk a programozásnak! Fogadni mernék rá, hogy azt gondoltad sosem jutunk el ide.
Nyissuk meg a szövegszerkesztőnket és készítsünk egy fájlt, ami a következő egy sort tartalmazza:
print "Hello vilag!"
print("Hello vilag!")
Ez az egész program. Biztos van tipped, mit is csinál ez.
Mentsük el a fájlt, például hello.py néven. Ezután bizonyosodjunk meg arról a parancsértelmezőben, hogy ugyanabban a könyvtárban vagyunk, ahova a fájlt mentettük, majd futtassuk a programot:
python hello.py
Gratulálok – most már Python programozó vagy!
Változók
Egy program, ami mindig ugyanazt a dolgot írja ki, nem vicces. Szükségünk lesz olyan értékekre, amelyek változhatnak. Ezeket hívjuk változóknak.
A változó az egyik módja az értékek tárolásának. Tárolhatunk számot, szöveget vagy bármi mást is benne.
Például van egy name nevű változóm, amiben a nevemet tárolom:
name = "Akkana"
name="Akkana"
Ezt kiírathatom:
print "Hello,", name
print("hello ",name)
Egészítsük ki a fenti két sorral az előző ‘Hello vilag’ fájlunkat. Használjuk a saját nevünket.
Futtassuk, majd ellenőrizzük, hogy működik-e.
Bemenet
Lehetséges, hogy szeretnéd megkérdezni a felhasználó nevét, így attól függne mit írsz ki, hogy ki futtatja a programot.
A Pythonban erre a raw_input (python 3-ban az input) használható:
name = raw_input("Mi a neved? ")
print "Hello,", name
name=input("Mi a neved?")
print("Hello, ", name)
Miért raw_input a neve ahelyett, hogy input? Valamilyen oknál fogva, a Python tervezői úgy döntöttek, hogy az input valami bonyolultabbat jelentsen, őszintén szólva, sokkal kevésbé hasznosat: ez mindent kiértékel amit Python parancsként begépelsz. Nem fogod az input-ot gyakran használni, viszont a raw_input egy nagyszerű eszköz, ha a felhasználótól szeretnék valamilyen adatot bekérni.
Ennyi volt mára – Nem akartam túl hosszúra nyújtani az első leckét.
Gyakorló feladatok
Elsőre csak nézzük néhány egyszerű kérdést!
Programozni úgy lehet megtanulni, ha gyakoroljuk. Ezért minden lecke végén pár gyakorló feladatot fogtok találni. A megoldásaitokat és a felmerült kérdéseiteket hozzászólásban vagy az erre a célra létrehozott fórumon (http://women.ubuntu.hu/groups/ubuntu-women-hungary/forum/topic/python-kurzus/) várjuk.
1. Ki milyen Python verziót használ, melyik operációs rendszeren és disztribúción?
2. Vajon miért van két vessző a
print "Hello,", name
print("Hello,", name)
parancsban? Mit gondolsz mi a különbség a két vessző között?
3. Ki tudja miért lett Python a nyelv neve?

Mamoru mondta 2011. december 11. vasárnap
Tetszik ez a szépen megformázott és intelligensen lefordított tutorial, a python3 kiegészítésért külön jár egy köszönöm.
Házi feladat:
1. Xubuntu 11.10 @ Python 2.7.2+
2. Az első vessző még a kiírandó szöveg része mivel a “”-n belül van, tehát egy sima írásjel funkciót lát el, a második meg talán jelzi a fordítónak, hogy most változó következik aminek az értékét kell behelyettesítenie.
3. ” Nevét a Monty Python csoportról kapta.” “A Monty Python-csoportot (közkeletű nevén The Pythons) 1969-ben alapította öt brit író-színész: (Graham Chapman, John Cleese, Eric Idle, Terry Jones, Michael Palin) és egy amerikai animátor, (Terry Gilliam).”
grus mondta 2011. december 15. csütörtök
Köszönjük az első házifeladat megoldást!
Örülök, hogy tetszik a kurzus, úgy tervezem, hogy kéthetente teszem ki a leckéket, csak hogy véletlenül se legyen csúszás (abban az esetben, ha esetleg kevesebb időm lenne fordítani. Bár alapvetően nem is a fordítás megy lassan, csak nehéz volt találni embert, aki átnézi a fordítást és “lektorálja”). Már biztosan láttad a 2. lecke is kész van.
Szívesen veszek/veszünk bármilyen korrekciót, javaslatot, kérdést is. Szívesen kiegészítem a hiányosabb részeket is magyarázatokkal. Bár megjegyzem, maga a Python nekem is teljesen új, de örülök hogy tanulhatok a kurzus fordításával
sam69 mondta 2012. január 18. szerda
Sziasztok!
Akárhányszor futtatni akarom, mindig syntax hibát jelez, és a Python 2.x – et nem szereti…. Se a hatost, se a hetest… Ilyenkor hogyan tovább?
grus mondta 2012. január 18. szerda
Szia!
Melyiknél ad hibát és pontosat mit ír ki?
katalin mondta 2012. március 27. kedd
Szia!
ubuntu 11.10-est hasznalok, es 2.7.2 pythont,
most mar tudom miert hivjak Pythonak az elöttem szolotol:-)
Denes mondta 2012. április 28. szombat
Köszi az oldalt és köszi hogy a hármas verzióhoz külőn leirtad,
csak megjegyzésként sosem hittem volna hogy innen származik a neve