Python GELECEK. Barış Metin <baris@gelecek.com.tr> Linux Sistemleri. Python Programlama Dili



Benzer belgeler
Kaya Oğuz.

PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan <hdogan@hido.

Open Source Coding: Python

PyQt ile İş Uygulaması Geliştirimi

Start : Bu method init methodundan hemen sonra çalışır ve applet dosyası yürütülmeye başladığında çalışmaya başlar.

PYTHON PROGRAMLAMA DİLİ

YAZILIM VE PROGRAMLAMA DİLİ. Donanım ve yazılım nedir? Yazılım nedir? Yazılım çeşitleri nelerdir? Programlama dili nedir

PYTHON PROGRAMLAMA DİLİ

Teknikleri. Önsöz. iskender atasoy

İnternet Programcılığı

Glade. hitokiri. Eylül, 2012

R ile Programlamaya Giriş ve Uygulamalar

ile Python gibi kod yazma

PYTHON 3. Python Nedir? Yrd. Doç. Dr. Murat Olcay ÖZCAN

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Ruby Nedir? 1.1 Amaçlar. 1.2 Ruby nin Yapısal Sıradüzeni

Ruby ve Rails'de Exception Kullanımı

Pythonda değişkenlerin türlerini tanımlamaya gerek yoktur

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Linux'ta Kabuk ve Kabuk Programlama

Python Programlama Dili

PHP ye Giriş. Hidayet Doğan

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Big Endian & Little Endian K.Atilla Toker İzmir Üniversitesi Meslek Yüksek Okulu Bilgisayar Programcılığı Ver:01

TEMPLATES. Binnur Kurt Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. C++ ile Nesneye Dayalı Programlama 1

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

LABORATUVAR ÇALIŞMASI 1 - Python a Giriş

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

Python ile Programlamaya Giriş DERS 9: FONKSİYONLAR DR. HÜSEYİN BAHTİYAR

LKD LKD. Programlama. Oğuz Yarımtepe oguzy (at) comu.edu.tr. Oğuz Yarımtepe. Slayt Slayt11. oguzy (at) comu.edu.tr

Python Web 2.0 Python ve Web 2.0 Son. Python ve Web 2.0. Gökmen GÖKSEL, 3 Mayıs 2007

Linux Grafiksel Arayüz Kütüphaneleri

Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz.

JAVA API v2.0 Belge sürümü: 2.0.2

Java Programlama Dilinde Veri Tipleri. Yrd. Doç. Dr. Aybars UĞUR

İlk Konsol Uygulamamız 2 İlk Windows Uygulamamız 9.Net Framework Yapısı 18 Neler Öğrendik 19. Veri Tipleri 24 Tanımlı Veri Tipleri 27 Basit Tipler 28

Linux Assembly Programlamaya Giriş

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Python Programlama Dili

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü

AJAX nedir? AJAX nasıl çalışır? AJAX. Tahir Emre KALAYCI. Sunucu Yazılım Teknolojileri

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI Yazılım Türleri

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

1 GİRİŞ 1 C# Hakkında Genel Bilgiler 1.Net Framework 1 CLR 2 CLR Ve CTS 2 Temel Sınıf Kütüphanesi 3 CIL 3 Algoritma Nedir? 4 Sözde Kod (Pseudocode) 5

Java, Python ve Ruby Dillerinin Performans Karşılaştırması

Programlama Dillerinde Kullanılan Veri Tipleri

Ardışık Veri Tipleri. Prof.Dr. Bahadır AKTUĞ JFM212 Python ile Mühendislik Uygulamaları. *Kaynakça bölümünde verilen kaynaklardan derlenmiştir.

Bölüm 11. Soyut veri tipleri ve kapsülleme kavramları ISBN

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak: Published by Juan Soulié

GörüntüĐşlemede Yeni Bir Soluk, OpenCV

İçerik. Temel Kavramlar. Nesne Nedir? 1. Nesne : Örnek. Nesne Nedir? 2. Geçen hafta: Bu hafta: BBS-515 Nesneye Yönelik Programlama

2 PYTHON A GIRIŞ 13 PyCharm İle Python Projesi Oluşturma 15 Projenin Çalıştırılması 18 İlk Python Programımız 19 Açıklama Satırları 21

İskambil Kağıtları. Bir İskambil kağıdı

İŞLETİM SİSTEMLERİ. Enformatik Bölümü

Temel Kavramlar BBS-515 Nesneye Yönelik Programlama

Veritabanı Uygulamaları Tasarımı

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

Zope Uygulama Sunucusu

C++ Grafik Kullanıcı Arabirimlerinde Taşınabilirlik

LKD LKD. Programlama. Oğuz Yarımtepe oguzy (at) comu.edu.tr. Oğuz Yarımtepe. Slayt Slayt11. oguzy (at) comu.edu.tr

2 VISUAL STUDIO 2012 GELİŞTİRME ORTAMI

emon: Gerçek Zamanlı Gömülü Sistemlerin Çalışma Zamanı Görselleştirilmesi İçin Monitör Yazılımı

Bahar. BM 211 Programlama Dilleri 3 1

Nasıl Pardus Geliştiricisi Olunur?

Sanal Ortamda Nesnelerin Haptic Kol ile Manipülasyonu. Sevcan AYTEKİN Alpaslan DUYSAK

İNTERNET PROGRAMCILIĞI - II

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

Python ile Programlamaya Giris

Python ile Programlamaya Giriş DERS 1: PYTHON YÜKLENMESİ VE GENEL BİLGİLER DR. HÜSEYİN BAHTİYAR

Bilgisayar Programlama. 1.Hafta

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

Görsel Programlama DERS 01. Görsel Programlama - Ders01/ 1

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

FreeBSD Nedir? Ömer Faruk Şen EnderUNIX.ORG Core Team Üyesi

Java C.Thomas Wu 2004b kitabından Türkçeleştirilerek ve örneklendirilerek hazırlanmıştır.

5. PROGRAMLA DİLLERİ. 5.1 Giriş

Yrd. Doç. Dr. Caner ÖZCAN

Python Programlama Dili Eğitimi

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:

Öğr.Gör. Gökhan TURAN Gölhisar Meslek Yüksekokulu

#ifndef COMPLEX_H #define COMPLEX_H

Öğr. Gör. Serkan AKSU 1

Exploit Geliştirme Altyapıları. Fatih Özavcı Bilgi Güvenliği Danışmanı

Fonksiyon No. 2 Amaç: Kullanıcı tarafından girilen iki sayıyı toplayan bir fonksiyon yazalım.

Hemen hemen bütün GNU/Linux işletim sistemi ile birlikte Python programlama dili kurulu olarak gelir. Örnegin Ubuntu da Python zaten kuruludur.

PROGRAMLAMAYA GİRİŞ DERS 2

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.

Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır.

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

PYTHON DERS NOTLARI. 4) Python ı hangi dizine kurduğumuzu bilmek önemlidir. Zira karşılaşacağımız bazı sorunlar bu dizine gitmemizi gerektirebilir.

10/17/2007 Nesneye Yonelik Programlama 3.1

Ç NDEK LER G R fi 1 Bafllamadan Önce 1 Kitab Kimler Okumal? 1 Kitap çerisindeki Örnekler 2 Örneklerin Kullan m 3 Çekinmeden Yaz n 7

BLM 112- Programlama Dilleri II. Hafta 5 İşaretçiler (Pointers)

Veritabanı İşlemleri

1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2

1.PROGRAMLAMAYA GİRİŞ

Özgür Yazılımlarla Web Programlama. Özlem Özgöbek

Transkript:

Python Barış Metin <baris@gelecek.com.tr> GELECEK Linux Sistemleri

İçindekiler Python? Programlama!? Dil Özellikleri. Kullanım alanları. Diğer diller ile karşılaştırmalar. Örnek. Geliştirme ortamları.

Python? Monty Python's Flying Circus Bir programlama dili Guido Van Rossum 1990'larda ilk sürümler Şu anki sürüm 2.2.1

Python? Sürüm Yıl Kurum GPL Uyumu 0.9.0-1.2 1991-1995 CWI Evet 1.3-1.5.2 1995-1999 CNRI Evet 1.6 2000 CNRI Hayır 2.0 2000 BeOpen.com Hayır 1.6.1 2001 CNRI Hayır 2.1 2001 PSF Hayır 2.0.1-2.2 2001-2002 PSF Evet

Programlama! Herkesin bir bilgisayarı var. Herkes programlayabilir. Programlama zor değil mi? Bilinen diller (C/C++, java, perl) ile Evet. Python ile neredeyse konuşmak kadar kolay!

? O-O (Object Oriented) bir dil. Sadece bir betik dili değil! Yeni bir Perl değil! Genişletilebilir (C/C++, Java, veya herhangi bir dil ile). Diğer diller içerisinde kullanılabilir (C, Java).

? Açık kaynak kodlu. Kararlı (10+ yıldır geliştiriliyor) Geniş kullanıcı desteği var. Kolay, ilk dil olarak çok uygun! Programlama süresi çok kısa. Taşınabilir!

Platformlar Unix Windows OS/2 Mac Amiga...

Destekler Pek çok veritabanı. XML Regular Expressions (Düzenli İfadeler) COM, DCOM, ODBC Java (JPython) Pek çok grafik kütüphanesi Platform bağımsız: Gtk, Qt, Tk, WxWindows Platform bağımlı : X11, MacOS, MFC

Herşey Nesnedir! Dil Özellikleri Nesnelerin özellikleri vardır! Modüller, Sınıflar, Fonksiyonlar! Durum yakalama (Exception Handling)! Satır içerikleri (Indentation)!

Veri Tipleri Sayılar : int, long, float, complex Katarlar (string) Listeler (array), sözlükler (dictionaries) Örnek diğer tipler : Regular Expressions (Düzenli ifadeler) Ek modüller yeni veri yapıları oluşturabilirler.

Kullanım Alanları Hızlı programlama gereken her yerde! Web programlamada Veritabanı programlamada XML işlemede Grafik Arabirim programlamada Diğer diller içerisinde Embedded (gömülü) sistemlerde

Kimler Kullanıyor? Red Hat (Linux yükleyici) Yahoo (Yahoo! Groups) Google (arama motoru) Infoseek (arama motoru) IBM (tüm betik programlamalar)...

Perl ile Karşılaştırıldığında Öğrenmesi çok daha kolay. Özellikle programlamaya yeni olanlar için. Kod okunabilirliği yüksek. Kod bakımı kolay. Uygulama geliştirme süresi daha kısa. Bazı durumlarda yavaş.

Java ile Karşılaştırıldığında 5-10 kat daha kısa kod. Kolay Daha hızlı geliştirme Daha yavaş

Python yorumlayıcı $ python >>> import sys >>> sys.exit() Program dosyaları #!/usr/bin/python import sys print Python dünyası sys.exit() Python Çalıştırmak

Örnek (method) def pyworld(isim) : "Örnek bir fonksyon" for i in range(len(isim)): print "Python dünyasına hoşgeldin %s" %(isim) baris@tiger:~$ python Python 2.1.3 (#1, Apr 20 2002, 10:14:34) [GCC 2.95.4 20011002 (Debian prerelease)] on linux2 Type "copyright", "credits" or "license" for more information. >>> def pyworld(isim) :... "Ornek bir fonksyon"... for i in range(len(isim)):... print "Python dunyasina hosgeldin %s" %(isim)... >>> pyworld ("baris") Python dunyasina hosgeldin baris Python dunyasina hosgeldin baris Python dunyasina hosgeldin baris Python dunyasina hosgeldin baris Python dunyasina hosgeldin baris >>>

Sınıf (Class) Yeni nesneler oluşturmak ve O-O programlama için kullanılır. Sınıf içindeki methodlar def ifadesi ile tanımlanır. Her method için ilk argüman kendini çağıran nesnedir. self adı ile anılır. Her sınıf için ön tanımlı methodlar vardır. Örn : init

class Stack: def init (self): self.stack=[] def push(self,object): Örnek (sınıf) self.stack.append(object) def pop(self): return self.stack.pop() def length(self): return len(self.stack)

Örnek (sınıf) y=stack() y.push( Barış ) y.push(22) y.push( Tiger ) y.push([1,2,3,4,5]) y.pop() y.pop() del y

Traceback (most recent call last) Hata Yakalama File <interactive input>, line 30, in ornek.py NameError : olmayannesne try : f=open( dosya.txt, r ) except IOError, hatabilgi : print Dosyayı açamadım.\n %s dosyasını açayım. %( dos2.txt ) print Bu arada, oluşan hata : \n%s %(hatabilgi) f=open( dos2.txt, r )

Extending & Embedding #include <Python.h> Python Modülleri Yapmak PyObject_GetAttr(PyObject *o, PyObject *attr_name) PySequence_List(PyObject *o) C içerisinde Python Kullanmak Py_Initialize(void) PyRun_SimpleString(char *command) PyRun_SimpleFile(FILE *fp, char *filename) PyFinalize(void)

Program Geliştirme Ortamları Idle (www.python.org) Komodo (www.activestate.com) WingIDE BlackAdder (www.thekompany.com) Anjuta (ışıklandırma) Vim (ışıklandırma)

Son Sorular & Sohbet