Sözlükler daha çok string ifadelerin karşılıkları ile birlikte saklanması amacı ile kullanılır. Sözlükler içerisinde başka bir sözlük, tüp, liste de bulunabilir. İfadelerden ilki verildiğinde buna karşılık olan diğer ifade bulunacaktır.   Sözlükler { } işaretleri ile tanımlanır ve kullanılırlar.  Kullanım şekli şöyledir:

         Sözlük adı= { ‘anahtar1’ : ‘değer1’ , ………. ‘anahtarn’ : ‘değern’ }

Örneğin bir sınıftaki öğrencilerin isim ve no bilgilerini saklayan bir sözlük yapısı oluşturalım.

sınıf={'talha':'11','sumeyye':'21','enes':'22','omer':'23'}

>>> sınıf

{'omer': '23', 'sumeyye': '21', 'enes': '22', 'talha': '11'}

>>> sınıf['talha']

'11'

Görüldüğü gibi sözlük içerisinde bulunan Talha isimli anahtar değeri yazdığımızda bu anahtara karşılık gelen 11 değeri yazıldı.

Sözlükteki bir anahtarın değerini şu şekilde değiştirebiliriz:

>>> sınıf['talha']='20'

>>> sınıf

{'omer': '23', 'sumeyye': '21', 'enes': '22', 'talha': '20'}

Sözlüğe yeni bir anahtar ve değer eklemek için ise aşağıdaki örnekte görüldüğü gibi anahtarı ve değeri yazmamız yeterlidir;

>>> sınıf['hasan']='24'

>>> sınıf

{'enes': '22', 'talha': '20', 'hasan': '24', 'sumeyye': '21', 'omer': '23'}

Sözlükler içerisinde kullanılan metotları sırası ile inceleyelim:

 

has_key() metodu:

Sözlükte bir anahtarın mevcut olup olmadığını anlamak için kullanılır. Eğer anahtar mevcutsa geriye true değerini, yoksa false değerini döndürür.

>>> sınıf.has_key('hasan')

True

>>> sınıf.has_key('mehmet')

False

 

keys() metodu:

Bir sözlükteki anahtarları listelemek amacı ile kullanılır.

>>> sınıf.keys()

['enes', 'talha', 'hasan', 'sumeyye', 'omer']

Anahtarları şu şekilde de listeleyebiliriz:

>>> [a for a,d in sınıf.items()]

['enes', 'talha', 'hasan', 'sumeyye', 'omer']

 

values() metodu:

Bir sözlükteki anahtarlara karşılık gelen değerleri listelemek amacı ile kullanılır.

>>> sınıf.values()

['22', '20', '24', '21', '23']

Değerleri şu şekilde de listeleyebiliriz:

>>> [d for a,d in sınıf.items()]

['22', '20', '24', '21', '23']

 

items() metodu:

Bir sözlüğün içerisindeki anahtarlar ve bunlara karşılık gelen değerleri tüpler şeklinde listeler.

>>> sınıf.items()

[('enes', '22'), ('talha', '20'), ('hasan', '24'), ('sumeyye', '21'), ('omer', '23')]

Sözlük içerisindeki anahtar ve değerleri şu şekilde de listeleyebiliriz:

>>> ["%s=%s" % (a,d) for a,d in sınıf.items()]

['enes=22', 'talha=20', 'hasan=24', 'sumeyye=21', 'omer=23']

 

get() metodu:

Bir sözlüğün içerisindeki bir anahtarın değerini getirir. Aşağıdaki şekilde kullanılır:

Get(‘anahtarı içeren değişken’, ‘anahtarın mevcut olmaması durumunda ekrana gelecek olan mesajı içeren değişken’)

>>> print sınıf.get('talha')

20

Talha anahtarına karşılık olan 20 değeri getirildi.

>>> uyarı="Aranılan anahtar mevcut değil"

>>> print sınıf.get('mehmet',uyarı)

Aranılan anahtar mevcut değil

Mehmet isimli anahtar mevcut olmadığından dolayı uyarı değişkeninin içerisinde mevcut olan içerik ekrana yazıldı.

 

update() metodu:

Bir sözlüğün içerdiği anahtarların değerlerini başka bir sözcükte aynı isimli olarak mevcut olan anahtarların değerleri ile değiştirerek güncellemek amacı ile kullanılır.

Örneğin sınıf ve diğersınıf adlı iki adet sözlük oluşturalım

sınıf={'talha':'11','sumeyye':'21','enes':'22','omer':'23'}

diğersınıf={'talha':'10','sumeyye':'20'}

>>> sınıf

{'omer': '23', 'sumeyye': '21', 'enes': '22', 'talha': '11'}

>>> diğersınıf

{'sumeyye': '20', 'talha': '10'}

Daha sonra sınıf sözlüğündeki anahtarlardan diğersınıf sözlüğünde aynı isimde mevcut olan anahtarların değerlerini güncelleyelim.

>>> sınıf.update(diğersınıf)

>>> sınıf

{'sumeyye': '20', 'enes': '22', 'omer': '23', 'talha': '10'}

Görüldüğü gibi sınıf sözlüğü diğersınıf sözlüğüne göre güncellendi.

 

copy() metodu:

Bir sözlüğün içerdiği anahtar ve değerleri tamamen kopyalayarak yeni bir sözlük oluşturma amacı ile kullanılır.

>>> sınıf

{'omer': '23', 'sumeyye': '21', 'enes': '22', 'talha': '11'}

>>> yenisınıf=sınıf.copy()

>>> yenisınıf

{'omer': '23', 'sumeyye': '21', 'enes': '22', 'talha': '11'}

 

del() fonksiyonu ve clear() metodu:

del() fonksiyonu sözlük içerisindeki bir anahtar ve buna karşılık gelen değeri silmek için kullanılır.

>>> del sınıf['enes']

>>> sınıf

{'sumeyye': '20', 'omer': '23', 'talha': '10'}

clear() metodu ise bir sözlükteki bütün anahtar ve değerleri silmek amacı ile kullanılır.

>>> sınıf.clear()

>>> sınıf

{}

 

popitem() metodu:

Sözlükte bulanan ilk anahtar ve buna karşılık gelen değeri siler.

>>> sınıf

{'omer': '23', 'sumeyye': '21', 'enes': '22', 'talha': '11'}

>>> sınıf.popitem()

('omer', '23')

>>> sınıf

{'sumeyye': '21', 'enes': '22', 'talha': '11'}

Etiketler : Python
Kategoriler : Python
Yorumlar : 0 Yorum Yorum Yaz

Yorumlar

Yorum Eklenmemiş...

Yorum Yaz

Adınız: *
E-Mail Adresiniz: *
Web Sitesi:
Yorum: *
Güvenlik Kodu: *
 
Arama
  Ara
Takvim
<September 2010>
SMTWTFS
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789
Tag Bulutu