Recent Changes - Search:

Oktatás

* Programozás 1
  + feladatsor
  + GitHub oldal

* Szkriptnyelvek
  + feladatsor
  + quick link

Teaching

* Programming 1 (BI)
  ◇ exercises
  ◇ quick link

* Scripting Languages
  ◇ exercises
  ◇ quick link

teaching assets


Félévek

* aktuális (2023/24/2)
* archívum


Linkek

* kalendárium
   - munkaszüneti napok '20
* tételsorok
* jegyzetek
* szakdolgozat / PhD
* ösztöndíjak
* certificates
* C lang.
* C++
* C#
* Clojure
* D lang.
* Java
* Nim
* Scala


[ edit | logout ]
[ sandbox | passwd ]

Py2013szept

Archívum: 2013/14/1 (2013. szept.)

Tantárgy neve:Bevezetés a Python programozási nyelvbe
Tantárgy kódja:INBV381L / INCV381L / INDV381L
Előfeltétel:Magas szintű programozási nyelvek 1 (INBK301 / INCK301 / INDK301)
Félév:2013/2014/1 (2013. szept.)
Gyakorlatvezető:Szathmáry László
Syllabus:SyllabusPython-2013-2014-1.pdf

A gyakorlatok ideje és helye:

  • hétfő 8h-10h, IK-104
  • csütörtök 8h-10h, IK-104

Linkek:


Aktuális hírek

  • [2013.12.20.] Lezárult a félév, a jegyeket beírtam a Neptunba. Kellemes ünnepeket mindenkinek.
  • [2013.12.09.] Kint a 12. gyakorlat anyaga. Ismét van pontszerzési lehetőség.
  • [2013.12.02.] Kint a 11. gyakorlat anyaga.
  • [2013.11.28.] A 2. ZH-n a megbeszélt eszközökön kívül a Stack Overflow oldal is igénybe vehető.
  • [2013.11.28.] Közelednek a ZH-k, kezdjenek el felkészülni.
  • [2013.11.26.] Bad news. A köv. félévben csak 1 Python gyakorlatot indíthatok :(
  • [2013.11.25.] Kint a 10. gyakorlat anyaga. Ismét van pontszerzési lehetőség.
  • [2013.11.16.] Kint a 8. gyakorlat anyaga. HF: a sor és verem adatszerkezetek implementálása osztályok segítségével.
  • [2013.11.04.] Az 1. közös írásbeli ZH ideje és helye: 2013. nov. 11. (hétfő), 18h, F0-s terem.
  • [2013.10.14.] Megírtam a virtualenv használatát bemutató jegyzetet, itt tekinthető meg. Ez haladó téma, a gyakorlaton erről nem lesz szó. Ha ki akarják próbálni és valami nem világos, akkor szóljanak.
  • [2013.10.12.] A shrek.unideb.hu szerverre felkerült a virtualenv csomag, így most már ott is lehet Pythonban dolgozni tetszőleges modulokat felhasználva. A virtualenv környezetet majd később mutatom be.
  • [2013.09.24.] Kijött a PyCharm 3.0-s verziója (link). A 2.7-es verzió nem frissíti magát erre, vagyis nekünk kell letölteni. Az egyetemi licenc ehhez is jó!
  • [2013.09.17.] Önellenőrző alkalmazás beüzemelése.
  • [2013.09.11.] Syllabus frissítése.

Mottó

"Nincs nyafogás. Programozás van."

Rövid ismertető

A gyakorlaton a Python programozási nyelvvel fogunk megismerkedni. Mivel a tárgy előfeltétele a "Magas szintű programozási nyelvek 1", ezért feltételezem, hogy az alapvető fogalmakkal mindenki tisztában van. A gyakorlatokon Linuxos gépteremben leszünk, ahol Ubuntu GNU/Linux van feltelepítve. Csupán egy szövegszerkesztőre lesz szükség (pl. GEdit, vim, stb.); mindenki maga dönti el, hogy melyik a szimpatikusabb. A választott szövegszerkesztőben majd be kell állítani, hogy a TAB-ot automatikusan cserélje ki 4 db szóközre. (Ha valaki vim-et szeretne használni, akkor innen letölthet egy példa konfigurációs fájlt, melyben már szerepel az előbbi beállítás). GEdit-ben ezt a következőképpen tehetjük meg: EditPreferences, itt válasszuk az Editor fület, majd Tab Width értéke legyen 4, ill. pipáljuk be az Insert spaces instead of tabs előtti négyzetet.

PyCharm IDE

A Python nyelvhez számos integrált fejlesztői környezet (IDE) is létezik. Abban a szerencsés helyzetben vagyunk, hogy a JetBrains cég a Debreceni Egyetem számára biztosított egy osztálytermi licencet a PyCharm nevű IDE-jükhöz, mely 2014. január közepéig érvényes. Nagyobb projektekhez ennek a használatát javaslom. Akit érdekel, az küldjön egy emailt a címemre, melyben a következőket kell feltüntetni: név, Neptun kód, szak. Annyi a megkötés, hogy (1) a licencet ne adják tovább, ill. (2) a termék kereskedelmi célú szoftver fejlesztéséhez nem használható. Figyelem! A licenc használatára a Debreceni Egyetem összes diákja jogosult (nem csak azok, akik felvették a "Bev. a Pythonba" tárgyat). Vagyis nyugodtan lehet szólni másoknak is.

A gyakorlat tematikája / fóliák

A gyakorlaton elhangzottaknak szerves részét képezik a Függelékek is. A legutóbbi verzió innen tölthető le: python-fuggelekek.pdf. Ezt folyamatosan frissítem majd, érdemes lesz időnként megnézni, hogy volt-e bővítés. Az utolsó módosítás dátumát a fóliasor első diáján tüntetem fel.

1) 2013. szept. 16. / szept. 19.

  • bevezető, a Python története, a nyelv jellemzői
  • az interaktív shell használata
  • egyszerű Python szkriptek írása, futtatása
  • a sztring adattípus

A gyakorlaton vetített anyag: python-01-20130916.pdf
Házi feladat:

2) 2013. szept. 23. / szept. 26.

  • sztringek (folyt.): sztringek formázása, sztring szeletek (slices), sztringek fajtái (többsoros sztring, raw sztring, stb.)
  • konstansok
  • a lista adattípus
  • for ciklus

A gyakorlaton vetített anyag: python-02-20130923.pdf
Házi feladat:

Ajánlott feladatok (avagy: "teher alatt nő a pálma"):

3) 2013. szept. 30. / okt. 3.

  • írás a standard kimenetre (3 variáció), lásd még J függelék
  • listák (folyt.): gyakori lista műveletek, lista rendezése
  • verem és sor
  • split / join
  • range / xrange
  • ciklusok (for, while)
  • függelékek: A, B, J

A gyakorlaton vetített anyag: python-03-20130930.pdf
Házi feladat:

Ajánlott feladatok:

Opcionális (csak akit érdekel):

4) 2013. okt. 7. / okt. 10.

  • mi lesz False-ként kiértékelve
  • sztringbuffer
  • a tuple adattípus
  • list comprehension
  • long típus
  • vezérlési szerkezetek
  • docstring
  • opcionális paraméterek

A gyakorlaton vetített anyag: python-04-20131007.pdf
Házi feladat:

5) 2013. okt. 14. / okt. 17.

  • az assert utasítás
  • halmaz (set)
  • szótár (dictionary)

A gyakorlaton vetített anyag: python-05-20131014.pdf
Órán megoldott feladatok:

Házi feladat:

  • Py.20120921a ékezetek eltávolítása
  • Py.20130218b bizonyos karakterek
  • Py.20120818h 100 db 50-jegyű szám (PE #13) [csak az A változatot]
  • Py.20120816a 8 királynő
  • A fenti négy feladat minden függvényéhez írjunk docstring-es dokumentációt. (Docstring-hez általában hármas idézőjelet használunk hármas aposztróf helyett.)

6) 2013. okt. 21. / okt. 24.

  • globális változók
  • fájlkezelés

A gyakorlaton vetített anyag: python-06-20131021.pdf
Órán megoldott feladatok:

Házi feladat:

Ajánlott feladatok:

7) 2013. nov. 4. / nov. 7.

  • osztályok, objektumok

A gyakorlaton vetített anyag: python-07-20131104.pdf
Házi feladat:

  • Py.20130325a Sor megvalósítása két verem segítségével [pontvadászat: szerezhető +1 vagy +2 pont]
  • készüljenek a jövő heti ZH-ra

8) 2013. nov. 11. / nov. 14.

  • modulok
  • random számok

A gyakorlaton vetített anyag: python-08-20131111.pdf
Házi feladat:

  • a fólia 9. oldalán leírtakat kipróbálni
  • a sor és verem adatszerkezetek implementálása egy-egy osztály segítségével

9) 2013. nov. 18. / nov. 21.

  • a múlt heti ZH feladatainak átnézése
  • modulok (folyt.)

Házi feladat:

  • a 7. fólia 13-15. diáit átnézni (osztályváltozók, osztálymetódusok)
  • Py.20130218d Sztring inkrementálása
  • Py.20120815f Csinos szám

10) 2013. nov. 25. / nov. 28.

  • haladó rendezés
  • kivételkezelés

A gyakorlaton vetített anyag: python-10-20131125.pdf
Órán megoldott feladatok:

Házi feladat:

11) 2013. dec. 2. / dec. 5.

  • weboldalak letöltése
  • JSON szerializáció

A gyakorlaton vetített anyag: python-11-20131202.pdf
Órán megoldott feladatok:

Házi feladat:

12) 2013. dec. 9. / dec. 12.

  • Ruby / Ruby on Rails ismertető (Bodrogi Krisztián kiselőadása, PDF)
  • JSON szerializáció (folyt.)
  • reguláris kifejezések
  • Függelékek
  • összefoglaló

A gyakorlaton vetített anyag: python-12-20131209.pdf
Házi feladat:

  • készülni a jövő heti ZH-ra
  • Py.20120920f Első Google találat megnyitása
  • Py.20121126b Két program közti kommunikáció
  • Py.20121126a /r/EarthPorn: valamennyi kép URL-jének a kiíratása
  • Py.20121005a Keresés a PI számjegyeiben [pontvadászat: +1 pont]

Gyakorlati jegy

Az aláírás megszerzésének egyik feltétele a rendszeres részvétel a gyakorlatokon. A félév során legfeljebb 3 hiányzás megengedett. Aki ezt túllépi, annak az aláírás automatikusan megtagadásra kerül.

A félév közepén lesz egy közös zárthelyi dolgozat (papíron, gép nélkül). Erre kapnak egy jegyet. A zárthelyi időpontja és helyszíne:

  • 2013. nov. 11. (hétfő), 18h, F0-s terem

Lesz egy 2. ZH is az utolsó héten a gyakorlat időpontjában és helyén. Ez már gép előtt lesz. Erre is kapnak egy jegyet, majd a két ZH alapján megajánlok egy jegyet. Nem egyértelmű jegy esetén (pl. 3/4, 4/5) az órai munka és a házi feladatok alapján kerekítek fel vagy le.

Lesz javítási (vagy akár rontási) lehetőség is ha valaki nem lenne megelégedve a megajánlott jeggyel. Ekkor legfeljebb egy jegyet lehet javítani/rontani. A hallgatónak néhány konkrét programozási feladatot kell helyben megoldania, illetve ismernie kell a Python programozási nyelvvel kapcsolatos fogalmakat.

Menetrend

(A) végzősöknek

  • 2. ZH: 2013. dec. 6. (péntek), 14h, IK-104
  • javítási lehetőség: 2013. dec. 9. (hétfő), 18h, IK-104

(B) nem-végzősöknek

  • 2. ZH: 2013. dec. 16. (hétfő), ill. dec. 19. (csütörtök) [a gyakorlat helyén és idején]
  • javítási lehetőség: 2013. dec. 20. (péntek), 8h, IK-105

Ajánlott irodalom

Cloud City

  

Blogjaim, hobbi projektjeim

* The Ubuntu Incident
* Python Adventures
* @GitHub
* heroku
* extra
* haladó Python
* YouTube listák


Debrecen | la France


[ edit ]

Edit - History - Print *** Report - Recent Changes - Search
Page last modified on 2014 March 03, 17:33