Informatika2-2013/Gyakorlat08
A MathWikiből
(Változatok közti eltérés)
92. sor: | 92. sor: | ||
** x = var('x') | ** x = var('x') | ||
** expand, solve, plot, is_prime | ** expand, solve, plot, is_prime | ||
+ | |||
+ | == Python script futtatása == | ||
+ | |||
+ | ==== Interaktív ==== | ||
+ | * Amit kevésbé fogunk használni, de néha hasznos lehet az az interaktív python: | ||
+ | ** Terminálba írjátok be, hogy python | ||
+ | ** Itt bármilyen parancsot irogathattok, az adott sor eredményét kiírja mindig, vagy print-elhettek is | ||
+ | ** exit()-el lehet kilépni | ||
+ | |||
+ | ==== Script file ==== | ||
+ | * Nyissatok egy gedit-et (terminálba: gedit& [az és jel azért kell, hogy tudjunk tovább dolgozni a terminálban]) | ||
+ | * Mentsétek el ezt az üres file-t valahova '''proba.py''' néven (a kiterjesztés a fontos) | ||
+ | * Terminálban navigáljatok el oda ahova mentettétek (cd mappa, cd ..) | ||
+ | * Írjátok be terminálba hogy '''python proba.py''' | ||
+ | * Remélhetõleg semmi nem történt, akkor minden oké | ||
+ | * Most írjátok a file-ba (gedit-ben), hogy '''print "Hello World"''' | ||
+ | * Mentsétek el, majd terminálba újra '''python proba.py''' |
A lap 2013. április 2., 04:31-kori változata
Tartalomjegyzék |
Sage/Python Ismétlés
- Mûveletek mint C-ben, ami itt még pluszban van: ** (hatványozás)
- Függvényeknek nem kell visszatérési értéket adni:
def fv_neve(x, y): return x + y fv_neve(2, 10)
- Több dologra is emlékeztet az elõzõ 2 sor kód:
- Általában nem kell változóknak a típusát megadnunk
- A def kulcsszóval tudunk függvényt definiálni
- Fontos a formázás, itt nincs kapcsos zárójel, a szóközök jelzik, hogy melyik blokkon belül vagyunk (itt a return a def-en belül van, de a függvényhívás már nem)
- Nincs pontosvesszõ, így értelemszerûen a sortörés számít
- függvényhívás mint C-ben.
- Tömbök helyett vannak listáink, melyek hasonlóan mûködnek:
l = [4, 5, 7, 8, 9, 4, 6] b = l[1] + l[0] l[2] = 8 print l[2:5]
- Észrevételek:
- Változókat nem kell deklarálni, mint ahogy C-ben kellett (nem kell int b, ahhoz hogy használhassam b-t)
- Listák szintén 0-tól indexelendõk
- Részlistát lekérhetünk a fenti módon
- print-el tudunk írni a kimenetre (terminálba a mi esetünkben)
- További adatszerkezetek:
s = "The quick brown fox jumps over the lazy dog." # string t = (4, 5) # tuple d = {"alma":6, "korte":8, "banan":24} # dictionary print d["korte"]
- Észrevételek:
- Stringek és tuple-ök megváltoztathatatlanok, tehát nem írhatom, hogy t[0] = 7, vagy s[2] = 'c', de írhatom, hogy s = "Valami mas"
- Dictionary, azaz szótárak nem 0-tól n-ig indexelnek, hanem valamilyen kulcs szerint indexelnek, új elemet könnyû rakni hozzájuk pl: d["eper"] = 34
- Kommenteket a # jellel írhatunk, a sor végéig hatnak, több soros kommentet pl a """Tobbsoros""" módon lehet
- Beépített függvények az adatszerkezeteken:
l = range(5) # [0, 1, 2, 3 ,4] len(l) # 5 d = {"alma":6, "korte":8, "banan":24} d.keys() # ["alma", "korte", "banan"] d.values() # [6, 8, 24] "korte" in d # True
- Észrevételek:
- range függvénnyel megkapjuk az adott hosszú tömb indexeinek a listáját
- len függvény visszaadja a megadott lista hosszát (ilyen ugye C-ben nem volt)
- szótár függvények magukért beszélne
- Vezérlési szerkezetek:
x = 6 y = 43 if y > 21: print "y nagyobb" elif y == 21: print "y egyenlo" else: print "y kisebb" l = [5, 4, 6, 2] for i in l: print i ** 2 # 25 16 36 4 for i in range(len(l)): print l[i] ** 2 # 25 16 36 4 i = 0 while i < 5: print i ** 3 # 0 1 8 27 64
- Észrevételek:
- Nem kellenek zárójelek a feltételek köré
- A vezérlési szerkezet feje után (a blokk kezdete jelzéseként) kettõspont kell
- Van elif
- A for ciklus nem úgy megy mint C-ben, itt egy listán halad végig a ciklusváltozóval
- A range függvény segíthet a listaindexeken való haladáson, így már inkább C szerû for-t kapunk
- A while ciklus mint C-ben
- Vannak dolgok amikre lehet emlékeztek, de nem fog mûködne, mert csak sage-ben volt és nem python-ban, ezekre pár példa:
- 28.factor()
- x = var('x')
- expand, solve, plot, is_prime
Python script futtatása
Interaktív
- Amit kevésbé fogunk használni, de néha hasznos lehet az az interaktív python:
- Terminálba írjátok be, hogy python
- Itt bármilyen parancsot irogathattok, az adott sor eredményét kiírja mindig, vagy print-elhettek is
- exit()-el lehet kilépni
Script file
- Nyissatok egy gedit-et (terminálba: gedit& [az és jel azért kell, hogy tudjunk tovább dolgozni a terminálban])
- Mentsétek el ezt az üres file-t valahova proba.py néven (a kiterjesztés a fontos)
- Terminálban navigáljatok el oda ahova mentettétek (cd mappa, cd ..)
- Írjátok be terminálba hogy python proba.py
- Remélhetõleg semmi nem történt, akkor minden oké
- Most írjátok a file-ba (gedit-ben), hogy print "Hello World"
- Mentsétek el, majd terminálba újra python proba.py