View Single Post
Eski 03/11/2007, 23:06   #1 (permalink)
hasanyasin
. . :: pCuber :: . .
 
hasanyasin Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 02/2007
Mesaj: 440
Varsayılan Tatlı Tatlı Sorular (2)

a={}
a['blah'] = 'booo'
a['foo'] = 'tooo'
a['joo'] = 'fiyuuu'

şeklinde bir a dictionary nesnesi oluşturup buna bu şekilde elemanlar ekleyip bunları kullanabiliyorum. Lakin uygulama geliştirici grubumuzda son derece tembel mühendislerimiz var ve bunlar string sözlük anahtarları yerine doğrudan nesne alt nesneleri elde etmek istiyorlar. Şöyle ki:

a=LazyClass()
a.blah = 'booo'
a.foo = 'tooo'
a.joo = fiyuuu

Bu elemanlara bu şekilde ulaşabilmelerinin yanısıra, a nesnesinin şu özel metod ve özelliklerinin olmasını da istiyorlar:

a.childCount: a'nın bizim eklememizle oluşan çocuk nesnelerinin sayısı
a.printAll(): a'nın bizim oluşturduğumuz tüm çocuklarını ve değerlerini yazdıran metod
a.drop('elemanİsmi'): elemanİsmi olarak girilen çocuk nesneyi silen metod
a.drop(aListOfStrs): aListOfStrs ile verilen listede yer alan tüm stringlerdeki isimlere sahip elemanları silen metod.

Bu projede bizden istenen LazyClass'ı yazmamız. Bu bir algoritma sorusu değil, python dilinin özelliklerine hakim olmayı gerektiren bir soru.

Kolay gelsin... (:

[NOT: Olaylar tamamen kurgu ve bu soruları ben öğrenmek değil genç arkadaşların Python dilinin harikalıklarına ilgilerini uyandırmak için soruyorum.]
__________________
tebessüm edebilmek sanattır...
hasanyasin hatta değil   Alıntı Yaparak Yanıtla