List, Tuple, Set və Dictionary tipləri, funksiyaları, fərqləri və nümunələr
Python proqramlaşdırma dilində məlumat strukturları, verilənlərin səmərəli şəkildə saxlanılması və idarə edilməsi üçün vacibdir. Bu strukturlar müxtəlif məlumat tipləri üçün optimallaşdırılıb və fərqli istifadə hallarına uyğun gəlir. Bu məqalədə Python dilində əsas məlumat strukturlarından olan List, Tuple, Set və Dictionary haqqında danışacağıq.
Ümumiyyətlə bu strukturları öyrənərkən 2 anlayış ortaya çıxır:
1.Mutable
2.İmmutable
Mutable dəyişə bilən, yəni biz müdaxilə edib dəyişə bildiyimiz data tiplərinə verilən addır.
İmmutable isə dəyişə bilməyən, bir-birilə qarşılıqlı əlaqədə olmayan data tiplərinə verilən addır
1. List
List, Python-da ən çox istifadə edilən məlumat növlərindən biridir. Onlar kvadrat mötərizədə [] istifadə edilməklə yaradılır və digər listlər də daxil olmaqla istənilən məlumat növünü ehtiva edə bilər. Listlər dəyişkəndir, yəni list yaradıldıqdan sonra onun elementlərini dəyişə bilərik.
Listlər:
- Dəyişdirilə bilən (Mutable): Elementləri əlavə etmək, çıxarmaq və ya dəyişdirmək mümkündür.
- İndekslənmiş: Hər bir element müəyyən bir indeksə malikdir.
- Təkrarlana bilən: Eyni elementlər bir neçə dəfə daxil edilə bilər.
- Fərqli tiplər: Eyni siyahıda fərqli məlumat tipləri ola bilər.
Misal:
Funksiyalar
- Append– Bu funksiyanın köməyi ilə listə yeni bir və ya bir neçə element əlavə edə bilirik:
Gördüyümüz kimi Appenddə yalnız 1 element daxil edə bilirik, 2 element daxil etsək bizə error verəcək. Yalnız bir list içərisində çox element daxil etmək olar ki, onda nəticədə bizə list daxilinə əslində 1 element qaytarmış olacaq:
2. Extend- Bu funksiya Append funksiyası kimi listə element əlavə edir, amma fərqli cəhəti ondan ibarətdir ki Appenddə 1 element yazmaq olurdusa, Extendə 1-dən çox element yazmaq mümkündür:
3. İnsert– Müəyyən indexə görə yeni element əlavə edir. 2 element qəbul edir, birinci tərəfdə hansı indexə əlavə edəcəyiksə o yazılır, ikinci tərəfə isə hansı elementi daxil edəcəyiksə o daxil edilir:
Gördüyümüz kimi ‘Mavi’ elementi 2-ci index olan ‘Sarı’ elementindən öncə listə əlavə olunub
4. Remove– Verilən elementi listdən çıxarır:
5. İndex– Listin içindəki elementi daxil edirik və bizə neçənci indexdə olduğunu göstərir(Pythonda index 0-dan hesablanır):
- 6. Reverse– Listi tərsinə çevirir:
7. Pop– Popun içinə index daxil edilir və listdəki indexə aid olan elementi listdən çıxarır və özünə mənimsədir:
Sortun içərisinə reverse=True yazsaq tərsinə sıralayacaq:
2. Tuple
Tuple Listə bənzəyir, lakin onlar İmmutabledir(dəyişməzdir), yəni yaradıldıqdan sonra onun elementlərini dəyişmək olmur. Tuple mötərizələrdən () istifadə etməklə yaradılır və həmçinin istənilən məlumat növünü ehtiva edə bilər.
Misal:
rse=True yazsaq tərsinə sıralayacaq:
Funksiyalar
- Count– Tuplenin içərisindəki elementlərin sayını qaytarır:
Tuple-də 5 rəqəmi 3 dəfə təkrarlanıb
2. İndex– Verdiyimiz elementlərin index-in qaytarır:
4 rəqəminin neçənci indexdə yerləşməsi
3. Set
Pythonda setlər unikal elementlərin toplandığı kolleksiyadır. Unikal elementlər dedikdə hər elementdən yalnız 1 ədəd mövcud olmalıdır, yəni təkrarlanan elementlər özündə saxlamır. Mutabledir(dəyişəbiləndir) və İndexlənməmişdir. Setlər {} mörtərizəsinin köməyi ilə yaranır.
Misal:
l=[1,3,3,3,4,5,6,6] bu listi unikal listə çevirsək:
Funksiyalar
1.Add– Setə element əlavə edilir:
2. Update– Bir seti digər setə əlavə etmək üçün funksiyadır:
3. Union– İki və daha artıq setlər arasında birləşmə əlaqəsini təmin edir:
4. İntersection– İki və daha artıq setin kəsişməsini bizə qaytarır:
Remove və Pop kimi funksiyalar Setlərdə də istifadə olunur. Listdə necə mahiyyət daşıyırlarsa eynilə Setlərdə də eyni funksiyaları yerinə yetirirlər.
4.Dictionary
Dictionary(Lüğət) List və Setlər kimi mutable, indexlənmiş və təkrarlana bilən verilənlər strukturudur. Dictionaries Açar adlanan Key və Qiymət adlanan Value hissələrindən ibarət olur və məlumatları özlərində saxlayırlar. Dictionary qıvrımlı mötərizələrdən {} istifadə edilməklə yaradılır və məlumatları Listlər və ya Setlərdən daha mütəşəkkil şəkildə saxlamaq üçün istifadə olunur:
Misal:
Funksiyalar
- Keys– Dictionarydə olan bütün key yəni açarları qaytarır:
2. Values– Bütün qiymətləri qaytarır:
3. Get– Bu funksiyanın içərisinə Keyi daxil etdikdə bizə Valueni qaytarır:
4. Mövcud olan dictionaryə yeni Key və Valuenin daxil edilməsi:
Portağal Keyi və Narıncı Valuesi sonradan əlavə olunub
Oxşar və Fərqli cəhətlər cədvəldə
igər bir fərqli cəhət List və Tuple arasındadır.
List dəyişdirilə bilən (mutable) bir strukturdur. Bu səbəbdən Dictionary-də açar kimi istifadə oluna bilməz.
List dəyişdirilə bildiyi üçün onun hash dəyəri sabit deyil, bu isə açar olaraq istifadə edildikdə problemlərə səbəb ola bilər. Bu səbəbdən Python List-i açar kimi qəbul etmir və belə bir cəhd bizə TypeError nəticəsin qaytarır.
Tuple dəyişdirilə bilməyən (immutable) bir verilənlər strukturu olduğuna görə, dictionary-də açar (key) kimi istifadə oluna bilər.
Tuple-un dəyişdirilə bilməməsi səbəbindən Python onun hash dəyərini (hash value) hesablaya bilir və buna görə onu açar kimi qəbul edir.
Bu məqalədə hər bir məlumat strukturunun əsas xüsusiyyətlərini, funksiyalarını və fərqlərini öyrəndik, eləcə də onların real həyatda necə istifadə edilə biləcəyini nümunələrlə izah etdik. Bu məlumatlarla siz Python proqramlaşdırma dilində verilənləri daha səmərəli şəkildə idarə edə bilərsiniz.