MtHan.Net
msgbartop
msgbarbottom

14 Eki 08 Python Shelve Modülü

Ne zamandır Python ile ilgili pek güzel ÅŸey anlatmadım. Bu yazımda ise Python da bulunan sözlük yapısının aynısı olan, artı olarak sözlüklerle ilgili yaptığınız çalışmaları bir veritabanında saklayacak bir modülü bildiÄŸim kadarıyla anlatmaya çalışacağım. Bu modülün adı shelve. shelve modülü sayesinde sqllite gibi tek dosyadan oluÅŸan ve veriyi binary olarak saklayan veritabanı oluÅŸturabiliyoruz. Yalnız bu veri tabanı sadece “anahtar” ve “deÄŸeri” olarak kayıt yapabiliyor. O yüzden yukarıda da sözlük yapısı hakkında olduÄŸunu yazmıştık. Peki bu shelve modülüyle ne gibi uygulamalar geliÅŸtirebiliriz? ÖrneÄŸin; bir telefon defteri uygulaması gerçekleÅŸtirebiliriz ya da önemli ÅŸifrelerimizi saklayabiliriz. 2. seçeneÄŸi tercih etmem, ama benimde bu konuda bir uygulamam olan telefon defterini tercih ederim. Dersimizde arayüzü olmayan bir telefon defteri uygulaması yapacağız. shelve modülünün bütün iÅŸlevlerini kullanarak elimden geldiÄŸi kadar bir uygulama kodlayacağız ;) Modülümüzü import edelim ve baÅŸlayalım…

Yazının tamamını oku. »

08 Eki 08 Python da Modül Çekme Çeşitleri

Bu yazıyı yazmayı düşündüğümde gereksiz bir yazı olacağını biliyordum. Yine de Python’u yeni öğrenmeye çalışanlar için merak edilen bir ÅŸeydir… Python da yaygın olarak iki türlü modül çekme yöntemi vardır. Bunlar;

import Modul
ve
from Modul import *

Bir Modülü direk import ettiğimizde kodlarımızda kullanma şekli şu şekilde olacaktır:

d = Modul.fonk()

Bunun faydalarından biride başka modüllerle aynı adlı fonksiyon bulunduran modüllerin from terimiyle çağrılmasından doğacak çakışmayı önlemektir. Örneğin;

import shelve

dosya = shelve.open("asd.db", "w")

Eğer burada from terimiyle çağırırsak kodumuz şöyle olurdu:

from shelve import *

dosya = open("asd.db", "w")

Bunun sonucunda ise Python bize hata mesajı verirdi.

Traceback (most recent call last):
  File "", line 1, in
  File "/usr/lib/python2.5/shelve.py", line 225, in open
    return DbfilenameShelf(filename, flag, protocol, writeback)
  File "/usr/lib/python2.5/shelve.py", line 209, in __init__
    Shelf.__init__(self, anydbm.open(filename, flag), protocol, writeback)
  File "/usr/lib/python2.5/anydbm.py", line 77, in open
    raise error, "need ‘c’ or ‘n’ flag to open new db"
anydbm.error: need ‘c’ or ‘n’ flag to open new db

Bu hatayı almamak için kodlarınızda hata vermeyeceğini düşündüğünüz modülleri from terimiyle import edebilirsiniz. Buna örnek olarak Tkinter kütüphanesini verebiliriz. Aslında kullanacağınız modüllerin kullanıldığı örneklerdeki import edilme yöntemlerine bakarak gerekli kararı alabilirsiniz.

12 Ağu 08 Python Modülü: webbrowser

Merhaba! webbrowser modülü, tarayıcıdan istediğiniz sayfayı açmanızı sağlar. İsterseniz varsayılan tarayıcıdan; yeni sekmede ya da yeni pencerede web sitesi açtırabilirsiniz. Ya da isterseniz istediğiniz bir web tarayıcısını seçip açılacak sayfayı o tarayıcıda açtırabilirsiniz. Bu modül çok basit bir modüldür ve işlevi sadece tarayıcıdan web sitesi açmaktır. Nerelerde kullanıldığına dair bir örnek verecek olursak; bazı yazılımlarda işimizi gördükten sonra çıktığımızda tarayıcı açılır ve bir sayfaya yönlendirilir. Bu modülde bu örneğe tam anlamıyla uyuyor.

Yazının tamamını oku. »

13 Haz 08 Virux - Linux için Antivirüs :)

Bir linux forumunda arkadaÅŸlarla tartışırken; “Neden Linux için espiri olarak bir antivirüs uygulaması yapmıyoruz?” sorusuna karşılık bir kaç gün sonra küçük bir betik yazdım. Uygulamanın adı Virux(Virüs-Linux)…

Yazının tamamını oku. »

30 May 08 Python Dersleri: 5. Bölüm - TelDef.py(Bosalt Butonu)

Tel-Def ile ilgili son dersimize başlıyoruz…

Eğer önceki derslerden kalma notlarınız duruyorsa; metin düzenleyicinizle notlarınızı açınız ve hazır olunuz…

Yazının tamamını oku. »

27 May 08 Python Dersleri: 4. Bölüm - TelDef.py(Listele Butonu)

Listele butonunun iÅŸlevini göreceÄŸimiz bu ders belkide içlerindeki en kısa süren ders olacak. Metin düzenleyicileriniz ve geçmiÅŸ derslerden kalma kodlarınız hazırsa baÅŸlıyalım…

Yazının tamamını oku. »

25 May 08 Python Dersleri: 3. Bölüm TelDef.py(Kişi Sil Butonu)

Sıradaki dersimize hoÅŸgeldiniz… Bu derste ilk dersten hatırlayacağınız KiÅŸi Sil butonunun iÅŸlevini anlatacağım. İlk önce hangi iÅŸletim sistemi üzerindeyseniz o sistemde bulunan metin editörünü açınız ve TelDef.py dosyasını inceliyerek ve geçen dersten kalan kodları bir kenarda hazır tutarak hazır olun…

Yazının tamamını oku. »

24 May 08 Python Dersleri: 2. Bölüm - TelDef.py(Kişi Ekle Butonu)

2. Dersimizde TelDef.py nin “KiÅŸi Ekle” Butonunun iÅŸlevini anlatağım. İlk önce; Windows kullanıcıları Python IDLE sini ya da notepad++ gibi Python kodlarını renklendiren bir programı kullanabilirler -benim önerim Python’ un kendi IDLE sidir- Pardus kullanıcıları(Linux tabanlı her hangi bir dağıtımda olabilir) kate adlı metin düzenleyicisini kullanabilirler. En makbul olanıda bence kate :)

Hazırlığımızı yaptığımıza göre bize kodlama sürecinde gerekli olan modülleri çekiyoruz.

Yazının tamamını oku. »

22 May 08 Python Dersleri: Tel-Def 1. Bölüm - Giris.py

Arayüzü Oluşturalım:

Eğer daha önce Python ile ilgili bilgi edinmediyseniz
http://wiki.pardus-linux.org/index.php/Programlama:%C4%B0%C3%A7indekiler
http://www.python.quotaless.com/
ve http://www.turkpython.net

adresleri inceleyebilirsiniz. Çünkü bu anlatımlar bilgi edinmiş kimseler içindir.

Hemen iÅŸe koyulalım ve bir metin belgesi açalım. Linux altında kate, Windows altında ise Python’ un kendi IDLE sini kullanmak yeterlidir…

Arayüz için Tkinter modülünü kullanıyorum, çünkü çok basit sayılabilecek bir modüldür. Åžimdi küçük bir arayüz oluÅŸturalım….

Yazının tamamını oku. »

22 May 08 Python Dersleri: Tel-Def’ e GiriÅŸ

Öğrenme aşamasında kodlamaya başladığım Tel-Def uygulamasını açıklayıcı bir şekilde sitemde anlatmaya başlıyorum. İşte Tel-Def ile ilgili giriş yazısı:

Yazının tamamını oku. »