1. Giriş

Telif Hakkı © 2001 Python Software Foundation. Tüm hakları saklıdır.
Telif Hakkı © 2000 BeOpen.com. Tüm hakları saklıdır.
Telif Hakkı © 1995-2000 Corporation for National Research Initiatives. Tüm hakları saklıdır.
Telif Hakkı © 1991-1995 Stichting Mathematisch Centrum. Tüm hakları saklıdır.
Telif Hakkı © 2001 Dinçer Aydın, tercüme. Tüm hakları saklıdır.
Lisans bilgileri için https://docs.python.org/3/license.html adresine bakınız.

Python kolay öğrenilen güçlü bir yazılımlama dilidir. Verimli yüksek seviyeli veri türlerine sahiptir ve nesne tabanlı yazılımlamaya yaklaşımı basit ve etkilidir. Python'un şık sözdizimi, dinamik veri türleri ve yorumlanan bir dil oluşu onu çoğu alan ve platformda hızlı yazılım geliştirme için ideal yapar.

Python yorumlayıcısı ve geniş standart kütüphanesi kaynak ya da çalıştırılabilir paket olarak Python Sitesinden alınabilir ve dağıtılabilir. Aynı sitede farklı Python dağıtımları, modüller, yazılımlar ve belgeler bulunabilir. Günümüzde yaygın olarak kullanılan işletim sistemlerinin çoğu için bir Python dağıtımı mevcuttur.

Python yorumlayıcısı C veya C++ (ya da C dilinden çağırılabilen başka bir dil) ile yazılmış veri türleri ve işlevler ile genişletilebilir. Diğer dillerde yazdığınız yazılımlarınıza da Python yorumlayıcısını bağlayabilir ve Python ile ek özellikler eklenebilen yazılımlar geliştirebilirsiniz.

Bu kılavuz okuyucuya Python dilinin temel özelliklerini, kavramlarını ve sistemini tanıtmaktadır. Örnekleri denemek için el altında bir Python yorumlayıcısı bulundurmak yararlı olur.

Bu kılavuz Python'un bütün özeliklerini ya da yaygın olarak kullanılan her özelliğini açıklamak amacında değildir. Bunun yerine Python'un kayda değer özelliklerinin çoğu tanıtılmaktadır ve dilin tarzı ile ilgili iyi bir fikir verilmektedir. Bunu okuduktan sonra Python modülleri ve yazılımlarını okuyup yazabileceğiniz gibi Python ile gelen geniş kütüphane ile ilgili daha çok şey öğrenmeye hazır olacaksınız.

1.1. İştahınızı Kabartalım

Eğer büyük bir kabuk betiği yazdıysanız neler olduğunu bilirsiniz. Bir özellik daha eklemek istersiniz; ancak yazılım yeterince büyük ve yavaş olmuştur ya da istediğiniz özelliğe sadece C aracılığıyla erişilebilir... Genellikle yazılım C ile baştan yazılmaya değecek önemde değildir ya da kabukta kolay olduğu halde C'de zor elde edilen özellikleri vardır. Belki de C ile yeterince iyi değilsiniz.

Bir diğer durum düşünün: birkaç C kütüphanesi ile çalışmanız gerekiyor ve normal yaz/derle/dene/tekrar derle döngüsü çok yavaş geliyor ve daha hızlı yazılım geliştirmeye ihtiyacınız var. Belki de genişletilebilir bir yazılım yazacaksınız; ancak bunun için yeni bir dil tasarlayıp bunun için gerekli yorumlayıcıyı yazıp yazılımınıza ekleyeceksiniz.

Bu gibi durumlarda Python tam aradığınız dil olabilir. Python kullanımı basit fakat gerçek bir dildir. Büyük yazılımlar için kabuktan daha uygundur ve C'den çok daha fazla hata denetimi yapar. Python çok yüksek seviyeli bir dil olup C ile verimli şekilde yazılması günler alabilecek yüksek seviyeli veri türlerine sahiptir (sözlükler ve listeler gibi). Daha genel veri türleri sayesinde Python Awk hatta Perl'den çok daha geniş bir yelpazede uygulama alanı bulabilir. Ayrıca Python'da pek çok şey en az o dillerdeki kadar kolaydır.

Python ile yazılımlarınızı daha sonra diğer Python yazılımlarınızda tekrar kullanabileceğiniz modüllere ayırabilirsiniz. Python geniş bir standart modül kolleksiyonu ile size gelmektedir. Dosya giriş/çıkışı, ses, resim, matematiksel işlemler vs. ile ilgili modüller de vardır.

Python yorumlanan bir dil olduğu için yazılım geliştirme sırasında size önemli miktarda zaman kazandırabilir. Çünkü derleme ve ilintileme gerekmemektedir. Yorumlayıcıyı etkileşimli olarak da kullanabilirsiniz; böylece dilin özelliklerini kolayca deneyebilir, hızlı bir şekilde küçük yazılımlar geliştirebilir, ya da aşağıdan-yukarı yazılım geliştirme sırasında işlevlerinizi test edebilirsiniz. Yorumlayıcı bir hesap makinesi olarak da kullanılabilir.

Python ile son derece sıkı ve okunabilir yazılımlar geliştirebilirsiniz. Birkaç nedenden Python yazılımları eşdeğer C veya C++ yazılımlarından çok daha kısadır:

  • Yüksek seviyeli veri türleri ile karmaşık işlemler tek bir ifade ile yazılabilir.

  • Deyimlerin gruplanması, başlama/bitme deyimleri (begin, end veya {} gibi) yerine blokların girintili yazılması ile sağlanır.

  • Değişken veya bağımsız değişken bildirimlerinin yapılması gerekmez.

Python genişletilebilir: Eğer C yazılımlamayı biliyorsanız Python'a kolayca yeni modüller ekleyebilir ya da yazılımınızın hızlı çalışması gereken kısımlarını C ile yazabilirsiniz. C yazılımlarınıza da Python yorumlayıcısını bağlayabilir ve Python ile ek özellikler eklenebilen yazılımlar geliştirebilirsiniz.

Python yazılımlama dili adını korkunç bir sürüngenden değil, `Monty Python's Flying Circus'' adlı bir BBC komedi dizisinden almıştır.

Artık Python konusunda heyecanlandınız ve daha ayrıntılı olarak incelemek istiyorsunuz. Bir dili öğrenmenin en iyi yolu onu kullanmak olduğundan sizi Python kullanmaya davet ediyoruz.

Bir sonraki bölümde yorumlayıcıyı kullanmayı öğreteceğiz. Bu çok basit bir şey; ancak daha sonraki bölümlerin anlaşılması için önemli.

Kılavuzun devamında basit ifadeler, deyimler ve veri türleri ile başlayıp, işlevler ve modüllerden kullanıcı tanımlı sınıflar gibi gelişmiş konulara kadar Python'un çeşitli özellikleri örnekler ile anlatılmaktadır.