VS Code'da
Ctrl'ye basılı tutup tıklarsak şu çıkıyor karşımıza:
Eki Görüntüle 2245844
Görüldüğü üzere
@property decoratorıyla decorate edilmiş. Burada ben de hakim olmadığım için detaya giremeyeceğim.
Sorunuzun cevabı
"yesn't" gibi geldi bana: Hem evet hem hayır.
Köşeli parantezin nasıl çalıştığına dair şuradaki ilk cevapta güzel bir açıklama yapılmış:
So .loc and .iloc are not your typical functions. They somehow use [ and ] to surround the arguments so that it is comparable to normal array indexing. However, I have never seen this in another li...
stackoverflow.com
Şöyle ki siz bir sınıfın
__getitem__ metodunu yazarsanız köşeli parantezi tıpkı normal parantezle fonksiyon çağırırmışçasına kullanabiliyorsunuz:
x = obje[...]. Üzerine
__setitem__ metodu da
obje[...] = 1 gibi atamalar yapmanıza olanak tanıyor.
df.loc'un döndürdüğü şey bir
_LocIndexer nesnesi ve bu
_LocIndexer sınıfında -daha doğrusu türediği
_LocationIndexer sınıfında- bu iki metot yazılmış, bu sayede
df.loc[...] çalışıyor. Dikkat edin ki burada köşeli parantezle
loc ayrı şeyler yani direkt
df.loc da yazabilirsiniz, her ne kadar anlamsız olursa da:
İrdelemenize bayıldım. Çalışma mantığını kavramak adına yaptığınız sorgulamaların asla zaman kaybı olduğunu düşünmüyorum. Elinizdeki aracı daha iyi tanımaya çalışmanız çok hoş.