Transcription of PYTHON ĐLE PROGRAMLAMAYA G ĐRĐŞ - enderunix.org
1 PYTHON ile PROGRAMLAMAYA Giri 1 PYTHON LE PROGRAMLAMAYA G R Cihangir BE KTA cihangir[at]akademi[dot]EnderUNIX[dot]or g 13 May s 2008 NDEK LER: PYTHON D L N N ZELL KLER 1 PYTHON ' A G R 1 AR TMET K LEMLER 1 VER T PLER 1 KONTROL DEY MLER 5 FONKS YONLAR 7 MOD LLER 9 PAKETLER 10 HATALAR ve ST SNALAR 11 SINIFLAR 12 PYTHON DA MYSQL VE QT LE GUI UYGULAMASI 14 PYTHON ile PROGRAMLAMAYA Giri 2 D L N N ZELL KLER * Nesneye y nelikdir.
2 * zg rd r. * Yorumlamal ve derlemelidir. Her ne kadar sadece yorumlamal g z kse de "byte code" bi iminde derleme yap l r. * Ta nabilir. * G l d r. htiyac n z olabilecek hemen hemen t m zellikler mevcuttur. * H zl d r. * Ticari uygulamalar geli tirmeye uygundur. Bunun i in kodu bytecode eklinde verebilirsiniz ya da "py2c" ile C mod l ne evirip derleyebilirsiniz. * Yaz l m kolayd r. * renmesi kolayd r. ' A G R ncelikle PYTHON sisteminize yok ise sitesinden sisteminize uygun olan indirebilirsiniz. Ayr ca PYTHON n yan nda baz mod llere ihtiyac n z olabilir.
3 E er UNIX kullan yorsan z bu mod lleri paket y neticiniz arac l yla y kleyebilirsiniz. PYTHON iki ekilde kullan labilir. Bunlardan biri etkile imli PYTHON kabu unu kullanmak. Di eri ise programlar dosyaya yazmakt r. Etkile imli kabuk daha ok k sa programlar i in ve genelde test etmek i in kullan l r. TMET K LEMLER +,-,*,/ i lemleri mevcuttur. Yaln z bunlar kullan rken tip uyu mazl na dikkat etmek gerekir. Ayr ca '**' s almak i in kullan l r. rnek: >>> 8**2 64 Karma k say lar zerinde de i lem yap labilir: >>> (3 + 3j) + (4 -1j) (7+2j) T PLER PYTHON daki standart veri tipleri "say lar(integer, float), s zc kler(string, character), listeler(lists), t pler(tuples), s zl kler(dictionaries), dosyalar(files)" d r.
4 De i ken isimleri rakamla ba layamaz. Tan mlarken t r n belirtmenize gerek yoktur. Otomatik olarak alg lan r. de i kenleri: >>>a=6 >>>b=7 >>>a+b 13 >>>c=(1+1j) PYTHON ile PROGRAMLAMAYA Giri 3 >>>d=(2+3j) >>>c+d 3+4j zc k de i kenleri: >>>a = "Merhaba PYTHON " >>>print a Merhaba PYTHON >>>b = " ile programlama" >>>a+b 'Merhaba PYTHON ile programlama' S zc kler i in baz fonksiyonlar vard r. Bunlara rnek olarak s zc k olan de i keni say ya eviren int() , say y s zc e eviren str() , s zc n uzunlu unu veren len() verilebilir.
5 >>> a=9;b="5" >>> print a+int(b) 14 >>> str(a)+b '95' >>> len(str(a)+b) 2 de i kenleri: Listeleri verileri tutan diziler eklinde d nebiliriz. Olu tururken k eli parantez kullan l r. >>> liste = ['java','c++',' PYTHON '] >>> liste ['java','c++',' PYTHON '] >>> liste[1] 'c++' >>> liste = liste + ['ruby'] >>> liste ['java','c++',' PYTHON ','ruby'] Ayr ca listeler ters indistende okunabilir. >>> liste[-1] 'ruby' Liste elemanlar aral k vererek de kullan labilir. Burada ilk eleman verilmezse 0 kabul edilir. >>> liste[1:3] ['c++',' PYTHON '] >>> liste[:2] ['java','c++'] >>> liste[2:] [' PYTHON ','ruby'] Listeler i in de baz fonksiyonlar vard r.
6 Bunlara rnek olarak listenin sonuna eleman eklemek i in " (eleman)", bir eleman n listede ka tane bulundu unu d nd rmek i in PYTHON ile PROGRAMLAMAYA Giri 4 " (eleman)", iki listeyi toplamak i in " (liste)", herhangi bir eleman n indisini d nd rmek i in " (eleman)", belli bir yere eleman eklemek i in " (indis,eleman)", listenin son eleman n ekmek i in " ()", herhangi bir eleman listeden karmak i in " (eleman)", listeyi ters evirmek i in " ()", listeyi s ralamak i in " ()", listenin uzunlu unu d nd rmek i in " ()" fonksiyonlar verilebilir.
7 Burada "liste" olu turulan listenin ismi, "eleman" ise listedeki eleman temsil eder. rne in "liste" olarak yular daki rneklerde tan mlad m z liste de i keni, eleman olarak da ' PYTHON ' verilebilir. rnek bir fonksiyon a r s : >>> ('java') 1 olabilir. p(tuple) De i kenleri: T pleri i eri i de i tirilemeyen listeler olarak d nebilirsiniz. Parantez () kullanarak tan mlan rlar. >>> diller = ('c',' PYTHON ') >>> diller[1] ' PYTHON ' zl k(dictionary) De i kenleri: PYTHON programc lar i in s zl kler ok avantaj sa lar ve programc lar taraf ndan s kl kla kullan l r.
8 Bu tipte anahtar-s zc k ikilisi vard r ve u ekilde tan mlan rlar: sozluk={anahtar1:s zc k1,anahtar2:s zc k2,..} >>> sozluk = {'1':'fen','2':'t rk e'} >>> sozluk {'1': 'fen', '2': 't\xc3\xbcrk\xc3\xa7e'} >>> sozluk['1'] 'fen' Burada 't\xc3\xbcrk\xc3\xa7e' sizi korkutmas n PYTHON t rk e karakterleri yle alg l yor. Yoksa t rk e karakter deste i var. S zl kler i in de baz fonksiyonlar vard r. Bunlara rnek olarak anahtarlar d nd ren " ()", herhangi bir anahtar n s zl kte olup olmad n tespit eden varsa 1 yoksa 0 d nd ren " (sozcuk)", s zc kleri d nd ren " ()", b t n sozl d nd ren " ()", s zl kteki bir anahtara kar l k gelen s zc getiren " (anahtar)", s zl kteki bir anahtara kar l k gelen s zc silen " (anahtar)", t m s zc kleri silen " ()", bir s zl e ba ka bir s zl ekleyen " (sozluk2)" fonksiyonlar verilebilir.
9 (files): Dosyalar a mak i in open() fonksiyonu kullan l r: dosyade i keni=open(dizin,mod) PYTHON ile PROGRAMLAMAYA Giri 5 Dosya okuma(r), yazma(w), ekleme(a), okuma ve yazma(rw) olmak zere 4 modda a labilir. Baz dosya i lemleri unlard r: * write(x) : x s zc dosyaya yaz l r. * readline() : Dosyadan bir sat r okunur. * readlines() : Dosyan n tamam bir listeye okunur. * read(x) : Dosyadan x byte okuma yap l r. * read() : Dosyan n tamam bir s zc e okunur. * close() : Dosya kapat l r. u ekilde bir i lem yap labilir: >>> dosyam = open('.)
10 ', 'w') >>> ("ilk sat r\n") >>> ("ikinci sat r\n") >>> () Bu i lemden sonra PYTHON n al t r ld dizinde vi edit r yle dosyaya bak ld nda i lemlerimizi test etmi oluruz. $vi . ilk sat r ikinci sat r DEY MLER ILA TIRMA OPERAT RLER PYTHON >, >=, <, <=, ==, <>(e it de il) gibi kar la t rma operat rlerini ger ekler. Ayr ca lojik i lemler olarak "and(lojik ve)", "or(lojik veya)" ve "not(lojik de il)" deyimlerine sahiptir. F DEY MLER if kar la t rma: do ruysa al t r lacak blok elif kar la t rma: y r t lecek blok else: y r t lecek blok Yukar daki kullan m ekline sahip "if" deyimi istenen ko ula g re istenen kod par as n n al t r lmas n sa lar.