IDLE ile Oynaşma Günü

(Turkish translation by Caglar Saygili)

Bu sayfa kafası biraz karışmış yeni Python kullanıcılarına yardım amacıyla hazırlanmıştır. Akla gelen soru şudur: tamam, Python'u yükledik... hmmm... şimdi ne var?

Görsel bir rehbere sahip olmanın, sahip olunan endişeleri azaltmak bakımından çok iyi olacağı kesindir. Bu sayfanın amacı zaten budur. Plan küçük örneklerle IDLE (Integrated Development Environment) hakkında yol göstermektir. IDLE, dili keşfetmek için kolay bir yol sunmak için tasarlanmıştır. Verilecek örneklerde, bazı basit hatalar yapacağım, size bazı şeyler yanlış gidince neler olabileceği hakkında bilgi vermek için.

Bu arada, bu bir çevrimiçi belge eğer öneriniz ya da düzeltmek istediğiniz ya da eklemek istediğiniz bir şeyler olursa lütfen dyoo@hkn.eecs.berkeley.edu adresine yazmaktan çekinmeyin. Küçük ekleme: Python e-posta grubunun da çok görkemli bir kaynak olduğunu unutmayın, e-posta grubu: biz birbirine Python'da yaptıkları ilginç şeyleri göstermekten hoşlanan bir grup insanız, lütfen üye olmaktan ve bize katılmaktan çekinmeyin.

Değişiklikler



Tamam, Python'u yüklediğimizi varsayıyoruz. (Eğer yüklemediysek, bu adresi ziyaret edebiliriz: http://python.org ve Python yorumlayıcısının en son sürümünü indirebiliriz. Bu satırlar yazılırkenki sürüm 2.1) Ardından aslında yapmak isteyeceğimiz ilk şey çalıştırmaya başlamak olacak! Bunu IDLE'ı açarak yapabilirz, IDLE Başlat Menüsünde yerini almış yeni oluşturulmuş Python program grubunda bulunacaktır.



Yeni bir pencerenin görkemli bir şekilde açıldığını göreceğiz:

Bu IDLE'ye doğru ana pencere ve şu anda gördüğümüz ise "yorumlayıcı" penceresi. Yorumlayıcı bizim komutlarımızı doğrudan Python'a girmemize izin verir, komutları girer girmez Python bunu çalıştır ve sonuçları bize geri döndürür. Python'u keşfederken bu pencereyi çokça kullanacağız: bu çok iyi çünkü sonuçları hemen almamızı sağlıyor. Ve hatta o kadar ki, bunun çok güçlü bir hesap makinesi olduğunu düşünebiliriz bile.



Şimdi bir şeyler deneyelim! Geleneksel olarak, Python'a ölümsüz sözcükler "Hello World" dedirtelim.

'>>>' işaretlerinin bizim için bir anlamı var: Python görsel bir işaretle bize yeni bir komut için hazır olduğunu gösteriyor. Ve tabii yeni komutlar girdiğimizde Python'un sonuçları hemen vereceğini de farkediyoruz.



Tamam, bu yeterli bir basitlikteydi. Şimdi birkaç başka komut deneyelim. Aşağıya bakarsanız:

girilen fazladan birkaç komutun sonuçlarını göreceksiniz. Program yazmak için henüz yeterli kural bilmediğiniz için üzülmeyin: amaç Python ile komut yazarak deneyler yapmak. Eğer çalışmazsa, hatayı düzeltip tekrar deneriz. Fazladan birkaç daha komut kullanımı ve sonucu göreceğiz.

Eğer bu noktaya kadar geldiyseniz, Python'la oynamak için yeteri kadar şey biliyorsunuz demektir! Hemen Python For Beginners sayfasını açıp yorumlayıcı hakkında daha çok şey keşfedetmeye başlayabilirsiniz. Burada zaman sınırı yok. *sırıtış*



Şimdi ağır ağır yeterince yol aldık, şunu sorabiliriz: tamam, bu harika, ama Python'u kapatırsak ve sonra yeniden çalıştırdığımızda, bilgisayarın yazdıklarımızı anımsamasını nasıl sağlayacağız?

Çözüm ufak bir kurnazlıkta yatıyor: yorumlayıcı penceresinde doğrudan kaydetme işlemi yapamayız, çünkü bu hem yazdığımız komutları hem de sistemin verdiği yanıtları içerir. Bizim istediğimiz ise hazırlanmış bir dosya oluşturmak, sadece kendi yazdığımız komutları içeren ve bu belgeyi dosya halinde kaydedebilmek. Havamızda olduğumuz daha farklı bir zaman dosyayı açıp, Python'da "çalıştırıp" tüm herşeyi yeniden yazmamak bize zaman kazandırır.

Bunu deneyelim. Önce yeni bir pencere açarak, boş bir yazı tahtası açalım.

Burada mönü komutunun sonucunu görüyoruz:

Farkediyoruz ki yeni pencerede hiçbir şey yok. Bunun anlamı bu dosyanın sadece bizim komutlarımız için olduğu: Python kendi yanıtlarını içine katmayacak, bu biz isteyene kadar böyle gidecek. Ben bunu program penceresi olarak adlandıracağım, yorumlayıcı pencersinden ayırmak için.



Az önce yapmak istediğimiz yorumlayıcı penceresinde yapmayı denediklerimizi kaydetmekti. Hadi bunu program penceresi içine komutlar girerek (ya da başka bir yerden, istediğimiz komutları kopyala/yapıştır yaparak) yapalım.

Tamam, kopyalama ve yapıştırma işlerimiz bitti. Farketmemiz gereken önemli bir şey de ">>>" işaretlerinden kurtulurken çok dikkatli olduğumuz çünkü bu gerçekte programımızın bir parçası değil. Yorumlayıcı bu işaretleri bize yorumlayıcıda olduğumuzu göstermek için kullanıyor, ancak şimdi ayrı bir sayfa içinde düzenleme yapıyoruz, yorumlayıcının ortaya koyduğu insan eli yapıları ortadan kaldırabiliriz.



Şimdi dosyayı kaydedelim. Kaydet(Save) komutu Dosya(File) mönüsünün altında yer alır:



Dosyayı kaydettik, peki programı nasıl çalıştıracağız? Eğer program penceresindeki mönülere bakarsak,

yeni bir mönü seçeneği olduğunu görürüz bu "Run Script"'tir, bu zaten bizim yapmak istediğimiz. Görmek istediğimiz Python'un programı çalıştırması ve sonuçları yorumlayıcı pencersinde göstermesi.

Bununla birlikte, farkedilebilecek diğer bir şey ise benim bir yazım yanlışı yapmış olduğum: Yorumlayıcı penceresinde girdiklerimi doğru kopyalayamadım. Bu sonuçları etkiler mi?

İşte! Burada Python'un adlandırdığı şekilde bir "syntax error" örneği var. Python yaptığımız hatayı görüyor ve bizi yazdıklarımıza daha dikkatli bakmamız için uyarıyor. Python tasarımcıları böyle bir hata vermenin programcının ne yapmak istediğini tahmin etmekten daha kolay olduğunu düşünmüşler. Bu açık anlatım ve örtülü anlatımın karşı karşıya gelmesi gibi bir şey. Python'un uyguladığı kesin kurallar var neyin iyi neyin şüpheli göründüğünü ölçmek için. Dili konuşurken, bu kurallara karşı bir şeyler hissediyoruz. Ve eğer biraz şüpheli hissediyorsanız, evet, bu biraz dilbilgisi. *sırıtış*

Python bizi problemin üstüne yönlendirmede ve çözmemizi sağlamada genellikle yeterince yeteneklidir, şu anki durumda bize satır sonuna eklemeyi unuttuğumuz bir şey olduğunu söylüyor. Eklememiz gereken fazladan bir tırnak işareti. Hadi şimdi bunu ekleyelim.



Tamam, bu küçük yazım hatasını düzelttik diyelim. Yeniden programı çalıştırmayı deneyelim.

Bir başka çıkıntı, ama o kadar karışık değil, sadece aptalca. Devam edemememizi sağlayan bir başka durum, IDLE bizden program penceresinde yazdıklarımızı önce kaydetmemizi istiyor; bu, programı çalıştırmadan önce yaptıklarımızı kaydettiğimizden emin olmak için bir arayüz ifadesi.

(Not: yukarıdaki hata mesajı güncelliğini yitirmiş olabilir; birçok insan IDLE'ın bu tembel davranışını rahatsız edici buldu ve değiştirilmesini talep etti. Umut ediyoruz ki IDLE yeni sürümlerinde bu hatayı vermez.)

Denir ki çekirge bir sıçrar, iki sıçrar, üçüncü... Çalıştırmayı tekrar deneyelim. Şimdi düzgün çalışması gerekiyor.



Python'la oynarken kendimizi yorumlayıcı ve program pencereleri arasında bulduk, bir onda bir bunda... Bunun nedeni yorumlayıcıyı küçük bir labaratuar olarak kullanabilmemiz ve küçük programları deneyleyebilmemiz. Tatmin olduktan sonra (ya da iyice yorulduğumuzda), bir dosyanın içine öğrendiklerimizi kaydedebiliriz.

Bu, elbette, üstünde çalıştığımız ve kaydettiğimiz dosyayı daha sonra tekrar açacağımızı varsayıyor; zaten kaydettiğimiz bir programı yeniden açamamak çok aptalca olurdu. Şimdi şunu gösterelim ve bugünlük duralım. IDLE'da herşeyi kapatıyorum ve boş bir sayfa ile başlıyorum.

Open komutunu File mönüsünden bulacağız:

ve eğer herşey yolunda giderse yeni bir Program penceresinin açıldığını görmeliyiz:

eski programımızla birlikte tabii. Artık işin içindeyiz! Önceki çalışmamızı kaydedip daha sonra üzerinde çalışmak üzere açabiliriz. Çene açışı gibi değil ama Python'la bir günden daha fazla oynamak isteyenler için çok kritik. *sırıtış*

Bunlar IDLE'ın ne kadar ilginç şeyler yapabildiğini anlamamız/bilmemiz için çok yeterli. Bu rehber IDLE hakkında bir çok konuyu atlamıştır: IDLE sıradan bir editörden çok daha fazlasıdır, ancak tüm özelliklerini kaşfetmek biraz zaman alır, o yüzden şimdilik duralım. IDLE hakkında daha geniş bilgi için IDLE Belgelerini okuyabilirsiniz, özellikle daha dayanılmaz bir merak duyanlar. Tekrar ediyorum, eğer sorularınız varsa lütfen Python e-posta grubuna üye olmaktan çekinmeyin; herzaman sorularınıza yanıt verecek biriyle görüşme imkanı bulabilirsiniz bu eğlenceli. Umarım bu yazdıklarım da yardımcı olmuştur!

Burayı tıklayarak benim kişisel Python sayfama ulaşabilirsiniz.