{"id":42761,"date":"2026-06-22T21:03:40","date_gmt":"2026-06-22T18:03:40","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/"},"modified":"2026-06-22T21:04:03","modified_gmt":"2026-06-22T18:04:03","slug":"pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/","title":{"rendered":"Python&#8217;da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc"},"content":{"rendered":"<h2>Python&#8217;da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc<\/h2>\n<p>Veri depolama ve d\u00fczenleme, programlaman\u0131n temelini olu\u015fturur. Python&#8217;daki koleksiyonlar, farkl\u0131 veri t\u00fcrlerini etkili bir \u015fekilde y\u00f6netmenizi sa\u011flayarak kodunuzu daha d\u00fczenli ve i\u015flevsel hale getirir. Bu kapsaml\u0131 rehber, Listelerden S\u00f6zl\u00fcklere kadar Python&#8217;\u0131n temel koleksiyon yap\u0131lar\u0131n\u0131 ad\u0131m ad\u0131m tan\u0131tacak ve ger\u00e7ek d\u00fcnya senaryolar\u0131yla peki\u015ftirecektir.<\/p>\n<h2>Neden Python Koleksiyonlar\u0131na \u0130htiya\u00e7 Duyar\u0131z? Veri Y\u00f6netiminin Temelleri Nelerdir?<\/h2>\n<p>G\u00fcnl\u00fck hayatta bir\u00e7ok veriyi d\u00fczenli bir \u015fekilde saklama ihtiyac\u0131 duyar\u0131z. \u00d6rne\u011fin, bir al\u0131\u015fveri\u015f listesi, bir telefon rehberi, bir takvimdeki etkinlikler veya bir s\u0131n\u0131ftaki \u00f6\u011frencilerin notlar\u0131. Bu t\u00fcr verileri tek tek ele almak yerine, belirli bir d\u00fczende veya ili\u015fkisel yap\u0131da bir araya getirmek hem i\u015fimizi kolayla\u015ft\u0131r\u0131r hem de daha verimli \u00e7al\u0131\u015fmam\u0131z\u0131 sa\u011flar. \u0130\u015fte programlama d\u00fcnyas\u0131nda bu ihtiyac\u0131 kar\u015f\u0131lamak i\u00e7in &#8220;koleksiyonlar&#8221; (collections) veya &#8220;veri yap\u0131lar\u0131&#8221; (data structures) devreye girer. Python, bu konuda geli\u015ftiricilere olduk\u00e7a zengin ve kullan\u0131m\u0131 kolay ara\u00e7lar sunar.<\/p>\n<p>Peki, neden tek tek de\u011fi\u015fkenler yerine koleksiyonlara ihtiya\u00e7 duyar\u0131z? Bir d\u00fc\u015f\u00fcn\u00fcn, e\u011fer bir okulda 500 \u00f6\u011frencinin ad\u0131n\u0131 saklaman\u0131z gerekseydi, 500 ayr\u0131 de\u011fi\u015fken tan\u0131mlamak ne kadar pratik olurdu? Veya bu \u00f6\u011frencilerin not ortalamalar\u0131n\u0131 hesaplamak i\u00e7in her bir de\u011fi\u015fkeni tek tek mi i\u015fleyecektiniz? Elbette hay\u0131r. Koleksiyonlar, bu t\u00fcr durumlarda bize b\u00fcy\u00fck esneklik ve d\u00fczen sa\u011flar. Ayn\u0131 t\u00fcrden veya farkl\u0131 t\u00fcrden bir\u00e7ok veriyi tek bir yap\u0131 alt\u0131nda toplama, bu verilere kolayca eri\u015fme, onlar\u0131 de\u011fi\u015ftirme, ekleme veya silme imkan\u0131 sunarlar. Bu sayede kodumuz daha okunabilir, s\u00fcrd\u00fcr\u00fclebilir ve performansl\u0131 hale gelir.<\/p>\n<p>Python&#8217;da temel olarak d\u00f6rt ana koleksiyon t\u00fcr\u00fc bulunur: Listeler (Lists), Tuple&#8217;lar (Tuples), K\u00fcmeler (Sets) ve S\u00f6zl\u00fckler (Dictionaries). Her bir koleksiyon t\u00fcr\u00fc, kendine \u00f6zg\u00fc \u00f6zelliklere ve kullan\u0131m alanlar\u0131na sahiptir. \u00d6rne\u011fin, bir al\u0131\u015fveri\u015f listesi genellikle de\u011fi\u015febilir ve s\u0131ral\u0131 \u00f6\u011feler i\u00e7erir; bu durumda bir liste kullanmak mant\u0131kl\u0131 olacakt\u0131r. Ancak bir \u015fehrin koordinatlar\u0131 gibi de\u011fi\u015fmez ve s\u0131ral\u0131 bir veri \u00e7iftini saklamak istedi\u011fimizde tuple&#8217;lar daha uygun olabilir. E\u011fer bir grup i\u00e7indeki benzersiz \u00f6\u011feleri bulmak istiyorsak k\u00fcmeler i\u015fimize yarar. Son olarak, bir \u00f6\u011frencinin ad\u0131, soyad\u0131, numaras\u0131 gibi anahtar-de\u011fer ili\u015fkisi olan verileri saklamak i\u00e7in s\u00f6zl\u00fckler idealdir.<\/p>\n<p>Bu koleksiyonlar\u0131n do\u011fru bir \u015fekilde anla\u015f\u0131lmas\u0131 ve ne zaman hangi koleksiyonu kullanaca\u011f\u0131n\u0131z\u0131 bilmek, Python programlama yeteneklerinizi bir \u00fcst seviyeye ta\u015f\u0131yacakt\u0131r. Her birinin kendine \u00f6zg\u00fc avantajlar\u0131 ve dezavantajlar\u0131 vard\u0131r ve do\u011fru se\u00e7imi yapmak, uygulaman\u0131z\u0131n performans\u0131n\u0131 ve kodunuzun kalitesini do\u011frudan etkiler. Bu y\u00fczden, bu rehberde her bir koleksiyon t\u00fcr\u00fcn\u00fc detayl\u0131ca inceleyerek, ne i\u015fe yarad\u0131klar\u0131n\u0131, nas\u0131l kullan\u0131ld\u0131klar\u0131n\u0131 ve ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l uygulanabileceklerini ad\u0131m ad\u0131m \u00f6\u011frenece\u011fiz. Veri y\u00f6netiminin temel ta\u015flar\u0131 olan bu koleksiyonlar\u0131 kavrad\u0131\u011f\u0131n\u0131zda, daha karma\u015f\u0131k programlama problemlerini \u00e7\u00f6zmek i\u00e7in sa\u011flam bir temel atm\u0131\u015f olacaks\u0131n\u0131z.<\/p>\n<h2>Python Listeleriyle Tan\u0131\u015f\u0131n: Esnek Dizilerin G\u00fcc\u00fc Nas\u0131l Kullan\u0131l\u0131r?<\/h2>\n<p>Python&#8217;daki listeler (lists), belki de en s\u0131k kullan\u0131lan ve en \u00e7ok y\u00f6nl\u00fc koleksiyon t\u00fcr\u00fcd\u00fcr. S\u0131ral\u0131 (ordered), de\u011fi\u015ftirilebilir (mutable) ve yinelenen (duplicate) \u00f6\u011feler i\u00e7erebilen bir veri yap\u0131s\u0131d\u0131r. Bir listeyi, market al\u0131\u015fveri\u015f listenize benzetebilirsiniz; \u00f6\u011feleri ekleyebilir, \u00e7\u0131karabilir, s\u0131ras\u0131n\u0131 de\u011fi\u015ftirebilir ve ayn\u0131 \u00fcr\u00fcnden birden fazla ekleyebilirsiniz. Bu esneklik, listeleri bir\u00e7ok programlama senaryosu i\u00e7in vazge\u00e7ilmez k\u0131lar.<\/p>\n<p>Bir liste olu\u015fturmak olduk\u00e7a basittir. K\u00f6\u015feli parantezler <code>[]<\/code> aras\u0131na virg\u00fclle ay\u0131rarak \u00f6\u011feleri yazman\u0131z yeterlidir. \u00d6\u011feler farkl\u0131 veri tiplerinde olabilirler; say\u0131lar, metinler, hatta ba\u015fka listeler bile bir listenin \u00f6\u011fesi olabilir. \u00d6rne\u011fin, bir \u00f6\u011frencinin ald\u0131\u011f\u0131 dersleri veya bir projenin a\u015famalar\u0131n\u0131 bir liste i\u00e7inde saklayabiliriz. \u0130\u015fte basit bir liste olu\u015fturma \u00f6rne\u011fi:<\/p>\n<div class=\"code-container\">\n<pre><code>\nogrenci_notlari = [85, 92, 78, 95, 88]\nalisveris_listesi = [\"Elma\", \"S\u00fct\", \"Ekmek\", \"Peynir\"]\nkarisik_liste = [\"Merhaba\", 123, True, 3.14]\n  <\/code><\/pre>\n<\/div>\n<p>Listelerdeki \u00f6\u011felere eri\u015fmek i\u00e7in indeks (index) ad\u0131 verilen say\u0131sal konumlar\u0131n\u0131 kullan\u0131r\u0131z. Python&#8217;da indeksler 0&#8217;dan ba\u015flar. Yani bir listenin ilk \u00f6\u011fesi 0. indekste, ikincisi 1. indekstedir. Ayr\u0131ca, listenin sonundan ba\u015flayarak \u00f6\u011felere eri\u015fmek i\u00e7in negatif indeksler de kullanabiliriz (-1 son \u00f6\u011feyi, -2 sondan bir \u00f6nceki \u00f6\u011feyi temsil eder). Listelerin belirli bir b\u00f6l\u00fcm\u00fcn\u00fc almak i\u00e7in ise dilimleme (slicing) y\u00f6ntemini kullan\u0131r\u0131z. Bu, listenin belirli bir aral\u0131\u011f\u0131ndaki \u00f6\u011feleri yeni bir liste olarak d\u00f6nd\u00fcr\u00fcr.<\/p>\n<div class=\"code-container\">\n<pre><code>\nmeyveler = [\"Elma\", \"Armut\", \"Kiraz\", \"Muz\", \"\u00c7ilek\"]\nprint(meyveler[0])  # \u00c7\u0131kt\u0131: Elma\nprint(meyveler[2])  # \u00c7\u0131kt\u0131: Kiraz\nprint(meyveler[-1]) # \u00c7\u0131kt\u0131: \u00c7ilek\n\n# Dilimleme \u00f6rnekleri\nprint(meyveler[1:4]) # \u00c7\u0131kt\u0131: ['Armut', 'Kiraz', 'Muz'] (1. indeksten 4. indekse kadar, 4 dahil de\u011fil)\nprint(meyveler[:3])  # \u00c7\u0131kt\u0131: ['Elma', 'Armut', 'Kiraz'] (Ba\u015ftan 3. indekse kadar)\nprint(meyveler[2:])  # \u00c7\u0131kt\u0131: ['Kiraz', 'Muz', '\u00c7ilek'] (2. indeksten sona kadar)\n  <\/code><\/pre>\n<\/div>\n<p>Listelerin en g\u00fc\u00e7l\u00fc \u00f6zelliklerinden biri de de\u011fi\u015ftirilebilir (mutable) olmalar\u0131d\u0131r. Bu, bir liste olu\u015fturulduktan sonra \u00f6\u011felerini de\u011fi\u015ftirebilece\u011finiz, yeni \u00f6\u011feler ekleyebilece\u011finiz veya mevcut \u00f6\u011feleri silebilece\u011finiz anlam\u0131na gelir. Bir \u00f6\u011feyi de\u011fi\u015ftirmek i\u00e7in, o \u00f6\u011fenin indeksini kullanarak yeni de\u011feri ataman\u0131z yeterlidir. \u00d6\u011feler eklemek i\u00e7in <code>append()<\/code> (listenin sonuna ekler), <code>insert()<\/code> (belirli bir indekse ekler) veya <code>extend()<\/code> (ba\u015fka bir listenin \u00f6\u011felerini ekler) metodlar\u0131n\u0131 kullan\u0131r\u0131z. \u00d6\u011feleri silmek i\u00e7in ise <code>remove()<\/code> (belirli bir de\u011feri siler), <code>pop()<\/code> (belirli bir indeksteki \u00f6\u011feyi siler ve d\u00f6nd\u00fcr\u00fcr) veya <code>del<\/code> anahtar kelimesini (belirli bir indeksteki veya dilimdeki \u00f6\u011feleri siler) kullanabiliriz.<\/p>\n<div class=\"code-container\">\n<pre><code>\ngorevler = [\"Rapor Yaz\", \"Toplant\u0131ya Kat\u0131l\", \"E-postalar\u0131 Yan\u0131tla\"]\nprint(gorevler) # \u00c7\u0131kt\u0131: ['Rapor Yaz', 'Toplant\u0131ya Kat\u0131l', 'E-postalar\u0131 Yan\u0131tla']\n\n# Bir \u00f6\u011feyi de\u011fi\u015ftirme\ngorevler[0] = \"Sunum Haz\u0131rla\"\nprint(gorevler) # \u00c7\u0131kt\u0131: ['Sunum Haz\u0131rla', 'Toplant\u0131ya Kat\u0131l', 'E-postalar\u0131 Yan\u0131tla']\n\n# Yeni \u00f6\u011fe ekleme\ngorevler.append(\"M\u00fc\u015fteri Aramas\u0131 Yap\")\nprint(gorevler) # \u00c7\u0131kt\u0131: ['Sunum Haz\u0131rla', 'Toplant\u0131ya Kat\u0131l', 'E-postalar\u0131 Yan\u0131tla', 'M\u00fc\u015fteri Aramas\u0131 Yap']\n\ngorevler.insert(1, \"Proje Plan\u0131n\u0131 G\u00fcncelle\")\nprint(gorevler) # \u00c7\u0131kt\u0131: ['Sunum Haz\u0131rla', 'Proje Plan\u0131n\u0131 G\u00fcncelle', 'Toplant\u0131ya Kat\u0131l', 'E-postalar\u0131 Yan\u0131tla', 'M\u00fc\u015fteri Aramas\u0131 Yap']\n\n# \u00d6\u011feleri silme\ngorevler.remove(\"Toplant\u0131ya Kat\u0131l\")\nprint(gorevler) # \u00c7\u0131kt\u0131: ['Sunum Haz\u0131rla', 'Proje Plan\u0131n\u0131 G\u00fcncelle', 'E-postalar\u0131 Yan\u0131tla', 'M\u00fc\u015fteri Aramas\u0131 Yap']\n\nsilinen_gorev = gorevler.pop(2) # 2. indeksteki \u00f6\u011feyi sil ve d\u00f6nd\u00fcr\nprint(silinen_gorev) # \u00c7\u0131kt\u0131: E-postalar\u0131 Yan\u0131tla\nprint(gorevler) # \u00c7\u0131kt\u0131: ['Sunum Haz\u0131rla', 'Proje Plan\u0131n\u0131 G\u00fcncelle', 'M\u00fc\u015fteri Aramas\u0131 Yap']\n\ndel gorevler[0]\nprint(gorevler) # \u00c7\u0131kt\u0131: ['Proje Plan\u0131n\u0131 G\u00fcncelle', 'M\u00fc\u015fteri Aramas\u0131 Yap']\n  <\/code><\/pre>\n<\/div>\n<p>Listelerle yapabilece\u011finiz ba\u015fka bir\u00e7ok i\u015flem de vard\u0131r: Listenin uzunlu\u011funu <code>len()<\/code> ile bulabilir, \u00f6\u011feleri s\u0131ralamak i\u00e7in <code>sort()<\/code> metodunu veya <code>sorted()<\/code> fonksiyonunu kullanabilir, bir \u00f6\u011fenin listede olup olmad\u0131\u011f\u0131n\u0131 <code>in<\/code> operat\u00f6r\u00fcyle kontrol edebilirsiniz. Listeler, Python&#8217;da veri y\u00f6netimi i\u00e7in temel bir ara\u00e7t\u0131r ve esnekli\u011fi sayesinde \u00e7ok \u00e7e\u015fitli kullan\u0131m alanlar\u0131na sahiptir. Bir envanter listesi tutmaktan, kullan\u0131c\u0131 girdilerini i\u015flemeye kadar bir\u00e7ok senaryoda listelerden faydalanabilirsiniz.<\/p>\n<h2>De\u011fi\u015fmez Veri Saklama: Python Tuple&#8217;lar\u0131 Ne Zaman Tercih Edilmeli?<\/h2>\n<p>Python&#8217;da tuple&#8217;lar (demetler), listelere benzer \u015fekilde s\u0131ral\u0131 (ordered) ve yinelenen (duplicate) \u00f6\u011feler i\u00e7erebilen bir koleksiyon t\u00fcr\u00fcd\u00fcr. Ancak tuple&#8217;lar\u0131n en belirgin ve \u00f6nemli fark\u0131, de\u011fi\u015ftirilemez (immutable) olmalar\u0131d\u0131r. Yani bir tuple olu\u015fturulduktan sonra i\u00e7indeki \u00f6\u011feler de\u011fi\u015ftirilemez, eklenemez veya silinemez. Bu \u00f6zellik, tuple&#8217;lar\u0131 belirli senaryolarda listelerden daha g\u00fcvenli ve performansl\u0131 bir se\u00e7enek haline getirir.<\/p>\n<p>Tuple&#8217;lar, parantez <code>()<\/code> i\u00e7ine virg\u00fclle ayr\u0131lm\u0131\u015f \u00f6\u011feler yaz\u0131larak olu\u015fturulur. Tek \u00f6\u011feli bir tuple olu\u015ftururken, \u00f6\u011feden sonra mutlaka bir virg\u00fcl gelmesi gerekti\u011fini unutmamak \u00f6nemlidir, aksi takdirde Python bunu bir tuple olarak de\u011fil, parantez i\u00e7indeki bir ifade olarak alg\u0131lar. \u00d6rne\u011fin, <code>(5,)<\/code> bir tuple iken, <code>(5)<\/code> sadece bir say\u0131d\u0131r.<\/p>\n<div class=\"code-container\">\n<pre><code>\nkoordinatlar = (10.5, 20.3)\nrenk_kodu = (255, 0, 128)\nhaftanin_gunleri = (\"Pazartesi\", \"Sal\u0131\", \"\u00c7ar\u015famba\")\ntek_ogeli_tuple = (\"Python\",) # Tek \u00f6\u011feli tuple i\u00e7in virg\u00fcl \u00f6nemli\n  <\/code><\/pre>\n<\/div>\n<p>Listelerde oldu\u011fu gibi, tuple&#8217;lardaki \u00f6\u011felere indeksler ve dilimleme (slicing) kullanarak eri\u015febiliriz. \u0130ndeksler yine 0&#8217;dan ba\u015flar ve negatif indeksler de kullan\u0131labilir.<\/p>\n<div class=\"code-container\">\n<pre><code>\npersonel_bilgisi = (\"Ay\u015fe Y\u0131lmaz\", \"Yaz\u0131l\u0131m M\u00fchendisi\", 55000)\nprint(personel_bilgisi[0]) # \u00c7\u0131kt\u0131: Ay\u015fe Y\u0131lmaz\nprint(personel_bilgisi[1:]) # \u00c7\u0131kt\u0131: ('Yaz\u0131l\u0131m M\u00fchendisi', 55000)\n  <\/code><\/pre>\n<\/div>\n<p>Tuple&#8217;lar\u0131n de\u011fi\u015ftirilemez olmas\u0131, onlar\u0131n ne zaman kullan\u0131laca\u011f\u0131na dair temel bir ipucu verir. De\u011fi\u015fmesini istemedi\u011finiz veya yanl\u0131\u015fl\u0131kla de\u011fi\u015ftirilmesini engellemek istedi\u011finiz verileri saklamak i\u00e7in idealdirler. \u00d6rne\u011fin, bir veritaban\u0131ndan gelen ve de\u011fi\u015ftirilmemesi gereken sabit yap\u0131daki kay\u0131tlar, bir co\u011frafi konumun koordinatlar\u0131, bir RGB renk kodu veya bir \u00f6\u011frencinin sabit kimlik bilgileri gibi veriler tuple olarak saklanabilir. Bu, veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc sa\u011flaman\u0131n etkili bir yoludur.<\/p>\n<div class=\"code-container\">\n<pre><code>\n# Tuple'\u0131n de\u011fi\u015ftirilemezlik \u00f6zelli\u011fi\nnokta = (10, 20)\n# nokta[0] = 15 # Hata verir: TypeError: 'tuple' object does not support item assignment\n\n# Ancak tuple i\u00e7inde de\u011fi\u015ftirilebilir bir nesne varsa, o nesne de\u011fi\u015ftirilebilir\nliste_iceren_tuple = ([1, 2], 3)\nliste_iceren_tuple[0].append(4)\nprint(liste_iceren_tuple) # \u00c7\u0131kt\u0131: ([1, 2, 4], 3)\n  <\/code><\/pre>\n<\/div>\n<p>Tuple&#8217;lar ayn\u0131 zamanda &#8220;tuple paketleme&#8221; (tuple packing) ve &#8220;tuple a\u00e7ma&#8221; (tuple unpacking) \u00f6zellikleriyle de \u00f6ne \u00e7\u0131kar. Paketleme, birden fazla de\u011feri tek bir tuple&#8217;da toplama i\u015flemidir. A\u00e7ma ise bir tuple&#8217;daki de\u011ferleri birden fazla de\u011fi\u015fkene atama i\u015flemidir. Bu, \u00f6zellikle fonksiyonlardan birden fazla de\u011fer d\u00f6nd\u00fcrmek veya de\u011fi\u015fkenlere toplu atama yapmak i\u00e7in olduk\u00e7a kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<div class=\"code-container\">\n<pre><code>\n# Tuple paketleme\nkisi = \"Mehmet Can\", 30, \"\u0130stanbul\" # Parantez olmadan da tuple olu\u015fturulabilir\nprint(kisi) # \u00c7\u0131kt\u0131: ('Mehmet Can', 30, '\u0130stanbul')\n\n# Tuple a\u00e7ma\nad, yas, sehir = kisi\nprint(f\"Ad: {ad}, Ya\u015f: {yas}, \u015eehir: {sehir}\")\n# \u00c7\u0131kt\u0131: Ad: Mehmet Can, Ya\u015f: 30, \u015eehir: \u0130stanbul\n\n# Fonksiyonlardan birden fazla de\u011fer d\u00f6nd\u00fcrme\ndef get_user_info():\n    return \"Zeynep\", \"Demir\", 28\n\nkullanici_ad, kullanici_soyad, kullanici_yas = get_user_info()\nprint(f\"{kullanici_ad} {kullanici_soyad} {kullanici_yas} ya\u015f\u0131nda.\")\n  <\/code><\/pre>\n<\/div>\n<p>Tuple&#8217;lar, listelere g\u00f6re daha az bellek t\u00fcketebilir ve baz\u0131 durumlarda daha h\u0131zl\u0131 \u00e7al\u0131\u015fabilir. Ayr\u0131ca, s\u00f6zl\u00fck anahtar\u0131 (dictionary key) olarak kullan\u0131labilirler, \u00e7\u00fcnk\u00fc anahtarlar\u0131n de\u011fi\u015ftirilemez olmas\u0131 gerekir (listeler s\u00f6zl\u00fck anahtar\u0131 olamaz). Veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fcn kritik oldu\u011fu, performans\u0131n \u00f6nemli oldu\u011fu veya fonksiyonlardan sabit say\u0131da de\u011fer d\u00f6nd\u00fcrmeniz gereken durumlarda tuple&#8217;lar m\u00fckemmel bir se\u00e7imdir. Listeler kadar esnek olmasalar da, do\u011fru senaryoda kullan\u0131ld\u0131\u011f\u0131nda kodunuzun g\u00fcvenilirli\u011fini ve verimlili\u011fini art\u0131r\u0131rlar.<\/p>\n<h2>Benzersiz Elemanlar\u0131n Adresi: Python K\u00fcmeleri (Set) Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/h2>\n<p>Python&#8217;daki k\u00fcmeler (sets), matematikteki k\u00fcme kavram\u0131na benzer bir yap\u0131ya sahiptir. En temel \u00f6zelli\u011fi, yaln\u0131zca benzersiz (unique) \u00f6\u011feler i\u00e7ermesidir; yani bir k\u00fcmede ayn\u0131 \u00f6\u011feden birden fazla bulunamaz. Ayr\u0131ca, k\u00fcmeler s\u0131ral\u0131 (unordered) de\u011fildir ve indekslenemez (unindexed). Bu, k\u00fcme \u00f6\u011felerine belirli bir s\u0131ra veya konum \u00fczerinden eri\u015femeyece\u011finiz anlam\u0131na gelir. K\u00fcmeler, genellikle bir veri koleksiyonundan yinelenen \u00f6\u011feleri kald\u0131rmak, iki veya daha fazla k\u00fcme aras\u0131ndaki ortak veya farkl\u0131 \u00f6\u011feleri bulmak gibi i\u015flemler i\u00e7in kullan\u0131l\u0131r.<\/p>\n<p>Bir k\u00fcme olu\u015fturmak i\u00e7in s\u00fcsl\u00fc parantezler <code>{}<\/code> kullan\u0131r\u0131z. Ancak bo\u015f bir k\u00fcme olu\u015fturmak i\u00e7in <code>{}<\/code> kullan\u0131rsak bu bir s\u00f6zl\u00fck olu\u015fturur. Bo\u015f bir k\u00fcme olu\u015fturmak i\u00e7in <code>set()<\/code> fonksiyonunu kullanmal\u0131y\u0131z. \u0130\u00e7ine liste veya tuple gibi yinelenebilir (iterable) bir nesne vererek de k\u00fcme olu\u015fturabiliriz.<\/p>\n<div class=\"code-container\">\n<pre><code>\nsayilar = {1, 2, 3, 4, 5}\nmeyveler = {\"Elma\", \"Armut\", \"Elma\", \"Muz\"} # \"Elma\" tekrar etse de k\u00fcmede bir kez yer al\u0131r\nprint(meyveler) # \u00c7\u0131kt\u0131: {'Elma', 'Armut', 'Muz'} (S\u0131ra de\u011fi\u015febilir)\n\nbos_kume = set()\nliste_ile_kume = set([\"Kedi\", \"K\u00f6pek\", \"Kedi\", \"Ku\u015f\"])\nprint(liste_ile_kume) # \u00c7\u0131kt\u0131: {'Kedi', 'K\u00f6pek', 'Ku\u015f'} (S\u0131ra de\u011fi\u015febilir)\n  <\/code><\/pre>\n<\/div>\n<p>K\u00fcmelerin de\u011fi\u015ftirilebilir (mutable) bir yap\u0131ya sahip olmas\u0131, \u00f6\u011fe ekleyip \u00e7\u0131karabilece\u011fimiz anlam\u0131na gelir. Yeni bir \u00f6\u011fe eklemek i\u00e7in <code>add()<\/code> metodunu kullan\u0131r\u0131z. E\u011fer eklemeye \u00e7al\u0131\u015ft\u0131\u011f\u0131m\u0131z \u00f6\u011fe zaten k\u00fcmede varsa, hi\u00e7bir de\u011fi\u015fiklik olmaz. Birden fazla \u00f6\u011feyi ayn\u0131 anda eklemek i\u00e7in ise <code>update()<\/code> metodunu kullan\u0131r\u0131z; bu metod bir liste, tuple veya ba\u015fka bir k\u00fcme alabilir.<\/p>\n<div class=\"code-container\">\n<pre><code>\nfavori_renkler = {\"Mavi\", \"Ye\u015fil\"}\nfavori_renkler.add(\"K\u0131rm\u0131z\u0131\")\nprint(favori_renkler) # \u00c7\u0131kt\u0131: {'Mavi', 'Ye\u015fil', 'K\u0131rm\u0131z\u0131'}\n\nfavori_renkler.add(\"Mavi\") # Zaten var, k\u00fcme de\u011fi\u015fmez\nprint(favori_renkler) # \u00c7\u0131kt\u0131: {'Mavi', 'Ye\u015fil', 'K\u0131rm\u0131z\u0131'}\n\nek_renkler = [\"Sar\u0131\", \"Mor\", \"Mavi\"]\nfavori_renkler.update(ek_renkler)\nprint(favori_renkler) # \u00c7\u0131kt\u0131: {'Mavi', 'Sar\u0131', 'Ye\u015fil', 'Mor', 'K\u0131rm\u0131z\u0131'} (S\u0131ra de\u011fi\u015febilir)\n  <\/code><\/pre>\n<\/div>\n<p>K\u00fcmeden \u00f6\u011fe silmek i\u00e7in birka\u00e7 farkl\u0131 metod bulunur: <code>remove()<\/code> ve <code>discard()<\/code>. Her ikisi de belirli bir \u00f6\u011feyi k\u00fcmeden siler. Ancak <code>remove()<\/code> metodu, silmeye \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131z \u00f6\u011fe k\u00fcmede yoksa bir hata (KeyError) f\u0131rlat\u0131rken, <code>discard()<\/code> metodu hi\u00e7bir \u015fey yapmaz ve hata f\u0131rlatmaz. Bu, <code>discard()<\/code>&#8216;\u0131 daha g\u00fcvenli bir se\u00e7enek yapar. Ayr\u0131ca <code>pop()<\/code> metodu, k\u00fcmeden rastgele bir \u00f6\u011feyi siler ve d\u00f6nd\u00fcr\u00fcr (\u00e7\u00fcnk\u00fc k\u00fcmeler s\u0131ral\u0131 de\u011fildir, hangi \u00f6\u011fenin silinece\u011fi garanti edilmez). T\u00fcm \u00f6\u011feleri silmek i\u00e7in <code>clear()<\/code> metodunu kullanabiliriz.<\/p>\n<div class=\"code-container\">\n<pre><code>\nsayilar_kumesi = {10, 20, 30, 40, 50}\nsayilar_kumesi.remove(30)\nprint(sayilar_kumesi) # \u00c7\u0131kt\u0131: {10, 20, 40, 50}\n\nsayilar_kumesi.discard(100) # K\u00fcmede yok, hata vermez\nprint(sayilar_kumesi) # \u00c7\u0131kt\u0131: {10, 20, 40, 50}\n\nsilinen_sayi = sayilar_kumesi.pop() # Rastgele bir \u00f6\u011fe silinir\nprint(silinen_sayi) # \u00d6rne\u011fin: 10\nprint(sayilar_kumesi) # \u00d6rne\u011fin: {20, 40, 50}\n\nsayilar_kumesi.clear()\nprint(sayilar_kumesi) # \u00c7\u0131kt\u0131: set()\n  <\/code><\/pre>\n<\/div>\n<p>K\u00fcmelerin en g\u00fc\u00e7l\u00fc kullan\u0131m alanlar\u0131ndan biri de matematiksel k\u00fcme operasyonlar\u0131d\u0131r. \u0130ki k\u00fcme aras\u0131ndaki birle\u015fim (union), kesi\u015fim (intersection), fark (difference) ve simetrik fark (symmetric difference) gibi i\u015flemleri kolayca ger\u00e7ekle\u015ftirebiliriz. Bu i\u015flemler, veri analizi ve filtreleme senaryolar\u0131nda olduk\u00e7a i\u015fe yarar.<\/p>\n<div class=\"code-container\">\n<pre><code>\nkume1 = {1, 2, 3, 4, 5}\nkume2 = {4, 5, 6, 7, 8}\n\n# Birle\u015fim (Union): \u0130ki k\u00fcmedeki t\u00fcm benzersiz \u00f6\u011feler\nbirlesim = kume1.union(kume2) # veya kume1 | kume2\nprint(birlesim) # \u00c7\u0131kt\u0131: {1, 2, 3, 4, 5, 6, 7, 8}\n\n# Kesi\u015fim (Intersection): \u0130ki k\u00fcmedeki ortak \u00f6\u011feler\nkesisim = kume1.intersection(kume2) # veya kume1 & kume2\nprint(kesisim) # \u00c7\u0131kt\u0131: {4, 5}\n\n# Fark (Difference): Birinci k\u00fcmede olup ikinci k\u00fcmede olmayan \u00f6\u011feler\nfark = kume1.difference(kume2) # veya kume1 - kume2\nprint(fark) # \u00c7\u0131kt\u0131: {1, 2, 3}\n\n# Simetrik Fark (Symmetric Difference): Her iki k\u00fcmede de olmayan \u00f6\u011feler\nsimetrik_fark = kume1.symmetric_difference(kume2) # veya kume1 ^ kume2\nprint(simetrik_fark) # \u00c7\u0131kt\u0131: {1, 2, 3, 6, 7, 8}\n  <\/code><\/pre>\n<\/div>\n<p>K\u00fcmeler, b\u00fcy\u00fck veri setlerinde yinelenen \u00f6\u011feleri h\u0131zl\u0131ca tespit etmek ve kald\u0131rmak, \u00fcyelik testlerini (bir \u00f6\u011fenin k\u00fcmede olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek) \u00e7ok verimli bir \u015fekilde yapmak i\u00e7in idealdir. \u00d6rne\u011fin, bir web sitesinin ziyaret\u00e7i listesinden tekil ziyaret\u00e7ileri bulmak veya iki farkl\u0131 m\u00fc\u015fteri grubunun ortak ilgi alanlar\u0131n\u0131 belirlemek gibi senaryolarda k\u00fcmelerden faydalanabilirsiniz. Benzersizlik ve h\u0131zl\u0131 \u00fcyelik testi ihtiya\u00e7lar\u0131n\u0131z oldu\u011funda, Python k\u00fcmeleri g\u00fc\u00e7l\u00fc bir \u00e7\u00f6z\u00fcmd\u00fcr.<\/p>\n<h2>Anahtar-De\u011fer \u0130li\u015fkileri: Python S\u00f6zl\u00fckleri (Dictionary) ile Veri E\u015fle\u015ftirmek<\/h2>\n<p>Python&#8217;daki s\u00f6zl\u00fckler (dictionaries), di\u011fer koleksiyon t\u00fcrlerinden farkl\u0131 bir mant\u0131kla \u00e7al\u0131\u015f\u0131r. Her \u00f6\u011fenin bir anahtar (key) ve bir de\u011fer (value) \u00e7iftinden olu\u015ftu\u011fu, anahtar-de\u011fer e\u015flemeleri \u015feklinde veri saklarlar. Bir s\u00f6zl\u00fc\u011f\u00fc, ger\u00e7ek hayattaki bir s\u00f6zl\u00fc\u011fe veya telefon rehberine benzetebilirsiniz: Her kelimenin (anahtar) bir tan\u0131m\u0131 (de\u011fer) vard\u0131r ya da her ki\u015finin ad\u0131n\u0131n (anahtar) bir telefon numaras\u0131 (de\u011fer) vard\u0131r. Bu yap\u0131, veriye anahtar \u00fczerinden h\u0131zl\u0131 ve do\u011frudan eri\u015fim sa\u011flar.<\/p>\n<p>S\u00f6zl\u00fckler, s\u00fcsl\u00fc parantezler <code>{}<\/code> i\u00e7ine anahtar: de\u011fer \u00e7iftleri yaz\u0131larak olu\u015fturulur. Anahtarlar benzersiz (unique) ve de\u011fi\u015ftirilemez (immutable) olmak zorundad\u0131r (yani say\u0131lar, metinler veya tuple&#8217;lar anahtar olabilirken, listeler anahtar olamaz). De\u011ferler ise herhangi bir veri t\u00fcr\u00fcnde olabilir ve yinelenen de\u011ferler i\u00e7erebilir.<\/p>\n<div class=\"code-container\">\n<pre><code>\nkullanici_profili = {\n    \"ad\": \"Ali\",\n    \"soyad\": \"Demir\",\n    \"yas\": 30,\n    \"email\": \"ali.demir@example.com\"\n}\n\nurun_fiyatlari = {\n    \"Elma\": 15.50,\n    \"Muz\": 22.00,\n    \"Portakal\": 18.75\n}\n\nbos_sozluk = {}\n  <\/code><\/pre>\n<\/div>\n<p>S\u00f6zl\u00fcklerdeki de\u011ferlere, anahtarlar\u0131n\u0131 kullanarak eri\u015firiz. K\u00f6\u015feli parantez <code>[]<\/code> i\u00e7ine anahtar\u0131 yazarak ilgili de\u011feri alabiliriz. E\u011fer eri\u015fmeye \u00e7al\u0131\u015ft\u0131\u011f\u0131m\u0131z anahtar s\u00f6zl\u00fckte yoksa, <code>KeyError<\/code> hatas\u0131 al\u0131rs\u0131n\u0131z. Bu hatay\u0131 \u00f6nlemek i\u00e7in <code>get()<\/code> metodunu kullanmak daha g\u00fcvenlidir. <code>get()<\/code> metodu, anahtar bulunamazsa varsay\u0131lan bir de\u011fer d\u00f6nd\u00fcrmenize olanak tan\u0131r (varsay\u0131lan belirtmezseniz <code>None<\/code> d\u00f6nd\u00fcr\u00fcr).<\/p>\n<div class=\"code-container\">\n<pre><code>\nprint(kullanici_profili[\"ad\"]) # \u00c7\u0131kt\u0131: Ali\nprint(urun_fiyatlari.get(\"Muz\")) # \u00c7\u0131kt\u0131: 22.0\n\n# Anahtar bulunamazsa hata vermez, None d\u00f6nd\u00fcr\u00fcr\nprint(kullanici_profili.get(\"telefon\")) # \u00c7\u0131kt\u0131: None\n\n# Anahtar bulunamazsa varsay\u0131lan de\u011fer d\u00f6nd\u00fcr\u00fcr\nprint(kullanici_profili.get(\"telefon\", \"Bilgi Yok\")) # \u00c7\u0131kt\u0131: Bilgi Yok\n  <\/code><\/pre>\n<\/div>\n<p>S\u00f6zl\u00fckler de\u011fi\u015ftirilebilir (mutable) oldu\u011fu i\u00e7in, var olan anahtarlar\u0131n de\u011ferlerini g\u00fcncelleyebilir, yeni anahtar-de\u011fer \u00e7iftleri ekleyebilir veya mevcut \u00e7iftleri silebiliriz. Bir de\u011feri g\u00fcncellemek veya yeni bir \u00e7ift eklemek i\u00e7in, anahtar\u0131 kullanarak yeni de\u011feri ataman\u0131z yeterlidir. E\u011fer anahtar zaten varsa de\u011feri g\u00fcncellenir, yoksa yeni bir anahtar-de\u011fer \u00e7ifti eklenir.<\/p>\n<div class=\"code-container\">\n<pre><code>\nkullanici_profili[\"yas\"] = 31 # De\u011feri g\u00fcncelleme\nprint(kullanici_profili) # \u00c7\u0131kt\u0131: {'ad': 'Ali', 'soyad': 'Demir', 'yas': 31, 'email': 'ali.demir@example.com'}\n\nkullanici_profili[\"sehir\"] = \"Ankara\" # Yeni anahtar-de\u011fer \u00e7ifti ekleme\nprint(kullanici_profili) # \u00c7\u0131kt\u0131: {'ad': 'Ali', 'soyad': 'Demir', 'yas': 31, 'email': 'ali.demir@example.com', 'sehir': 'Ankara'}\n  <\/code><\/pre>\n<\/div>\n<p>S\u00f6zl\u00fcklerden anahtar-de\u011fer \u00e7iftlerini silmek i\u00e7in <code>del<\/code> anahtar kelimesini veya <code>pop()<\/code> metodunu kullanabiliriz. <code>pop()<\/code> metodu, silinen anahtar\u0131n de\u011ferini d\u00f6nd\u00fcr\u00fcr. T\u00fcm s\u00f6zl\u00fc\u011f\u00fc temizlemek i\u00e7in <code>clear()<\/code> metodunu kullan\u0131r\u0131z.<\/p>\n<div class=\"code-container\">\n<pre><code>\ndel kullanici_profili[\"email\"]\nprint(kullanici_profili) # \u00c7\u0131kt\u0131: {'ad': 'Ali', 'soyad': 'Demir', 'yas': 31, 'sehir': 'Ankara'}\n\nsilinen_yas = kullanici_profili.pop(\"yas\")\nprint(f\"Silinen ya\u015f: {silinen_yas}\") # \u00c7\u0131kt\u0131: Silinen ya\u015f: 31\nprint(kullanici_profili) # \u00c7\u0131kt\u0131: {'ad': 'Ali', 'soyad': 'Demir', 'sehir': 'Ankara'}\n\nkullanici_profili.clear()\nprint(kullanici_profili) # \u00c7\u0131kt\u0131: {}\n  <\/code><\/pre>\n<\/div>\n<p>S\u00f6zl\u00fckler \u00fczerinde d\u00f6ng\u00fc (iteration) yapmak i\u00e7in <code>keys()<\/code> (anahtarlar\u0131 d\u00f6nd\u00fcr\u00fcr), <code>values()<\/code> (de\u011ferleri d\u00f6nd\u00fcr\u00fcr) veya <code>items()<\/code> (anahtar-de\u011fer \u00e7iftlerini tuple olarak d\u00f6nd\u00fcr\u00fcr) metodlar\u0131n\u0131 kullanabiliriz. Bu metodlar, s\u00f6zl\u00fckteki verilere eri\u015fmenin ve onlar\u0131 i\u015flemenin esnek yollar\u0131n\u0131 sunar.<\/p>\n<div class=\"code-container\">\n<pre><code>\nurun_fiyatlari = {\n    \"Elma\": 15.50,\n    \"Muz\": 22.00,\n    \"Portakal\": 18.75\n}\n\nprint(\"\u00dcr\u00fcnler:\")\nfor urun in urun_fiyatlari.keys():\n    print(urun)\n\nprint(\"\\nFiyatlar:\")\nfor fiyat in urun_fiyatlari.values():\n    print(fiyat)\n\nprint(\"\\n\u00dcr\u00fcn ve Fiyatlar\u0131:\")\nfor urun, fiyat in urun_fiyatlari.items():\n    print(f\"{urun}: {fiyat} TL\")\n  <\/code><\/pre>\n<\/div>\n<p>S\u00f6zl\u00fckler, yap\u0131land\u0131r\u0131lm\u0131\u015f verileri depolamak, konfig\u00fcrasyon ayarlar\u0131n\u0131 y\u00f6netmek, JSON gibi veri formatlar\u0131n\u0131 i\u015flemek veya veritaban\u0131 kay\u0131tlar\u0131n\u0131 temsil etmek gibi bir\u00e7ok senaryoda vazge\u00e7ilmezdir. Anahtar-de\u011fer e\u015fle\u015fmesi sayesinde verilere \u00e7ok h\u0131zl\u0131 eri\u015fim sa\u011flarlar ve bu da onlar\u0131 b\u00fcy\u00fck veri setleriyle \u00e7al\u0131\u015f\u0131rken olduk\u00e7a verimli k\u0131lar. Python programlamas\u0131nda g\u00fc\u00e7l\u00fc ve esnek bir ara\u00e7 olan s\u00f6zl\u00fckleri ustaca kullanmak, kodunuzun kalitesini ve verimlili\u011fini \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131racakt\u0131r.<\/p>\n<h2>Koleksiyonlar\u0131 Etkili Kullanmak \u0130\u00e7in \u0130pu\u00e7lar\u0131 ve En \u0130yi Uygulamalar Nelerdir?<\/h2>\n<p>Python&#8217;daki koleksiyonlar\u0131 (listeler, tuple&#8217;lar, k\u00fcmeler, s\u00f6zl\u00fckler) anlamak sadece ba\u015flang\u0131\u00e7t\u0131r. As\u0131l marifet, do\u011fru koleksiyonu do\u011fru yerde ve en verimli \u015fekilde kullanabilmektir. \u0130\u015fte koleksiyonlar\u0131 daha etkili kullanman\u0131za yard\u0131mc\u0131 olacak baz\u0131 ipu\u00e7lar\u0131 ve en iyi uygulamalar:<\/p>\n<h3>1. Do\u011fru Koleksiyonu Se\u00e7mek:<\/h3>\n<ul>\n<li><strong>Liste (List):<\/strong> E\u011fer verilerinizin s\u0131ras\u0131n\u0131n \u00f6nemli oldu\u011fu, \u00f6\u011feleri ekleyip \u00e7\u0131karman\u0131z veya de\u011fi\u015ftirmeniz gereken, yinelenen \u00f6\u011feler i\u00e7erebilen bir koleksiyona ihtiyac\u0131n\u0131z varsa liste kullan\u0131n. \u00d6rne\u011fin, bir kullan\u0131c\u0131n\u0131n sepetindeki \u00fcr\u00fcnler, bir g\u00f6rev listesi.<\/li>\n<li><strong>Tuple (Demet):<\/strong> Verilerinizin de\u011fi\u015fmez (immutable) olmas\u0131n\u0131 istiyorsan\u0131z ve s\u0131ras\u0131 \u00f6nemliyse tuple kullan\u0131n. \u00d6zellikle bir fonksiyonun birden fazla de\u011fer d\u00f6nd\u00fcrmesi gerekti\u011finde veya s\u00f6zl\u00fck anahtar\u0131 olarak kullan\u0131ld\u0131\u011f\u0131nda faydal\u0131d\u0131r. \u00d6rne\u011fin, bir GPS koordinat\u0131 (enlem, boylam), bir tarih (y\u0131l, ay, g\u00fcn).<\/li>\n<li><strong>K\u00fcme (Set):<\/strong> Sadece benzersiz \u00f6\u011felerle \u00e7al\u0131\u015fman\u0131z gerekti\u011finde ve \u00f6\u011felerin s\u0131ras\u0131n\u0131n \u00f6nemi yoksa k\u00fcme kullan\u0131n. Yinelenen \u00f6\u011feleri filtrelemek, iki koleksiyon aras\u0131ndaki ortak veya farkl\u0131 \u00f6\u011feleri bulmak i\u00e7in idealdir. \u00d6rne\u011fin, bir web sitesini ziyaret eden tekil IP adresleri.<\/li>\n<li><strong>S\u00f6zl\u00fck (Dictionary):<\/strong> Anahtar-de\u011fer \u00e7iftleri \u015feklinde veri depolaman\u0131z gerekti\u011finde s\u00f6zl\u00fck kullan\u0131n. Verilere anahtarlar\u0131 arac\u0131l\u0131\u011f\u0131yla h\u0131zl\u0131 eri\u015fim gerekti\u011finde \u00e7ok verimlidir. \u00d6rne\u011fin, kullan\u0131c\u0131 profilleri, yap\u0131land\u0131rma ayarlar\u0131, \u00fcr\u00fcn kataloglar\u0131.<\/li>\n<\/ul>\n<h3>2. Liste Anlay\u0131\u015flar\u0131 (List Comprehensions) ve S\u00f6zl\u00fck Anlay\u0131\u015flar\u0131 (Dictionary Comprehensions):<\/h3>\n<p>Bu yap\u0131lar, mevcut bir koleksiyondan yeni bir koleksiyon olu\u015fturman\u0131n veya bir dizi \u00fczerinde d\u00f6ng\u00fc yaparken elemanlar\u0131 filtrelemenin\/d\u00f6n\u00fc\u015ft\u00fcrmenin k\u0131sa ve Pythonik bir yoludur. Kodunuzu daha okunabilir ve genellikle daha performansl\u0131 hale getirirler.<\/p>\n<div class=\"code-container\">\n<pre><code>\n# Liste anlay\u0131\u015f\u0131 \u00f6rne\u011fi: Sadece \u00e7ift say\u0131lar\u0131 filtrele ve karelerini al\nsayilar = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\ncift_sayilarin_karesi = [x**2 for x in sayilar if x % 2 == 0]\nprint(cift_sayilarin_karesi) # \u00c7\u0131kt\u0131: [4, 16, 36, 64, 100]\n\n# S\u00f6zl\u00fck anlay\u0131\u015f\u0131 \u00f6rne\u011fi: Bir listeden s\u00f6zl\u00fck olu\u015fturma\nurun_kodlari = [\"A101\", \"B202\", \"C303\"]\nurun_adlari = [\"Laptop\", \"Mouse\", \"Klavye\"]\nurun_katalogu = {kod: ad for kod, ad in zip(urun_kodlari, urun_adlari)}\nprint(urun_katalogu) # \u00c7\u0131kt\u0131: {'A101': 'Laptop', 'B202': 'Mouse', 'C303': 'Klavye'}\n  <\/code><\/pre>\n<\/div>\n<h3>3. Performans \u0130pu\u00e7lar\u0131:<\/h3>\n<ul>\n<li><strong>K\u00fcmelerde \u00dcyelik Testi:<\/strong> Bir \u00f6\u011fenin bir koleksiyonda olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in (<code>if item in collection:<\/code>), k\u00fcmeler listelere g\u00f6re \u00e7ok daha h\u0131zl\u0131d\u0131r. \u00d6zellikle b\u00fcy\u00fck koleksiyonlarda bu fark belirginle\u015fir. \u00c7\u00fcnk\u00fc k\u00fcmeler, \u00f6\u011feleri h\u0131zl\u0131 arama i\u00e7in optimize edilmi\u015f bir \u015fekilde saklar.<\/li>\n<li><strong>Listelerde Ekleme\/Silme:<\/strong> Listenin sonuna \u00f6\u011fe eklemek (<code>append()<\/code>) genellikle h\u0131zl\u0131d\u0131r. Ancak listenin ba\u015f\u0131na veya ortas\u0131na \u00f6\u011fe eklemek\/silmek (<code>insert()<\/code>, <code>remove()<\/code>, <code>del<\/code>), Python&#8217;\u0131n di\u011fer \u00f6\u011feleri kayd\u0131rmas\u0131 gerekti\u011fi i\u00e7in daha yava\u015f olabilir. E\u011fer s\u0131k s\u0131k listenin ba\u015f\u0131ndan \u00f6\u011fe ekleyip \u00e7\u0131karman\u0131z gerekiyorsa, <code>collections.deque<\/code> gibi \u00f6zel veri yap\u0131lar\u0131n\u0131 d\u00fc\u015f\u00fcnebilirsiniz.<\/li>\n<li><strong>Tuple&#8217;lar Listelerden Hafiftir:<\/strong> Tuple&#8217;lar de\u011fi\u015ftirilemez olduklar\u0131 i\u00e7in listelere g\u00f6re daha az bellek t\u00fcketebilir ve baz\u0131 durumlarda daha h\u0131zl\u0131 olu\u015fturulabilir\/i\u015flenebilir.<\/li>\n<\/ul>\n<h3>4. \u0130\u00e7 \u0130\u00e7e Koleksiyonlar:<\/h3>\n<p>Koleksiyonlar\u0131 birbirlerinin i\u00e7ine yerle\u015ftirerek daha karma\u015f\u0131k veri yap\u0131lar\u0131 olu\u015fturabilirsiniz. \u00d6rne\u011fin, bir liste i\u00e7inde s\u00f6zl\u00fckler (bir \u00f6\u011frenci listesi, her \u00f6\u011frencinin bir s\u00f6zl\u00fckle temsil edildi\u011fi), bir s\u00f6zl\u00fck i\u00e7inde listeler (bir kullan\u0131c\u0131n\u0131n favori \u00fcr\u00fcnlerinin listesi) veya i\u00e7 i\u00e7e listeler (bir matris) gibi yap\u0131lar s\u0131k\u00e7a kullan\u0131l\u0131r.<\/p>\n<div class=\"code-container\">\n<pre><code>\n# \u0130\u00e7 i\u00e7e s\u00f6zl\u00fckler ve listeler\nogrenci_listesi = [\n    {\"ad\": \"Ay\u015fe\", \"soyad\": \"Y\u0131lmaz\", \"dersler\": [\"Matematik\", \"Fizik\"]},\n    {\"ad\": \"Can\", \"soyad\": \"Kara\", \"dersler\": [\"Kimya\", \"Biyoloji\", \"Matematik\"]}\n]\nprint(ogrenci_listesi[0][\"dersler\"][0]) # \u00c7\u0131kt\u0131: Matematik\n  <\/code><\/pre>\n<\/div>\n<h3>5. <code>collections<\/code> Mod\u00fcl\u00fc:<\/h3>\n<p>Python&#8217;\u0131n standart k\u00fct\u00fcphanesindeki <code>collections<\/code> mod\u00fcl\u00fc, standart koleksiyonlara ek olarak \u00f6zel koleksiyon t\u00fcrleri sunar. Bunlar, belirli veri y\u00f6netimi ihtiya\u00e7lar\u0131 i\u00e7in optimize edilmi\u015ftir:<\/p>\n<ul>\n<li><code>Counter<\/code>: Bir koleksiyondaki \u00f6\u011felerin say\u0131s\u0131n\u0131 saymak i\u00e7in.<\/li>\n<li><code>defaultdict<\/code>: S\u00f6zl\u00fc\u011fe olmayan bir anahtarla eri\u015fildi\u011finde hata yerine varsay\u0131lan bir de\u011fer d\u00f6nd\u00fcrmek i\u00e7in.<\/li>\n<li><code>namedtuple<\/code>: Tuple&#8217;lara isimli alanlar ekleyerek daha okunabilir hale getirmek i\u00e7in.<\/li>\n<li><code>deque<\/code>: Listelere g\u00f6re her iki u\u00e7tan da h\u0131zl\u0131 ekleme ve \u00e7\u0131karma i\u015flemleri i\u00e7in (\u00e7ift u\u00e7lu kuyruk).<\/li>\n<\/ul>\n<div class=\"code-container\">\n<pre><code>\nfrom collections import Counter, defaultdict\n\n# Counter \u00f6rne\u011fi\nkelimeler = [\"elma\", \"armut\", \"elma\", \"muz\", \"armut\", \"elma\"]\nkelime_sayilari = Counter(kelimeler)\nprint(kelime_sayilari) # \u00c7\u0131kt\u0131: Counter({'elma': 3, 'armut': 2, 'muz': 1})\n\n# defaultdict \u00f6rne\u011fi\nsifir_default_sozluk = defaultdict(int)\nsifir_default_sozluk[\"a\"] += 1\nprint(sifir_default_sozluk[\"b\"]) # \u00c7\u0131kt\u0131: 0 (KeyError vermez)\n  <\/code><\/pre>\n<\/div>\n<p>Bu ipu\u00e7lar\u0131 ve en iyi uygulamalar, Python koleksiyonlar\u0131n\u0131 sadece kullanmakla kalmay\u0131p, onlar\u0131 daha bilin\u00e7li, verimli ve Pythonik bir \u015fekilde kullanman\u0131z\u0131 sa\u011flayacakt\u0131r. Kodunuzu tasarlarken ve veri yap\u0131lar\u0131n\u0131z\u0131 se\u00e7erken bu prensipleri g\u00f6z \u00f6n\u00fcnde bulundurmak, daha sa\u011flam ve \u00f6l\u00e7eklenebilir uygulamalar geli\u015ftirmenize yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<h2>Sonu\u00e7: Python Koleksiyonlar\u0131yla Veri Y\u00f6netiminde Uzmanla\u015fmak<\/h2>\n<p>Bu rehber boyunca, Python&#8217;\u0131n temel koleksiyon t\u00fcrlerini \u2013 Listeler, Tuple&#8217;lar, K\u00fcmeler ve S\u00f6zl\u00fckler \u2013 detayl\u0131 bir \u015fekilde inceledik. Her birinin kendine \u00f6zg\u00fc \u00f6zelliklerini, nas\u0131l olu\u015fturulduklar\u0131n\u0131, \u00f6\u011felerine nas\u0131l eri\u015fildi\u011fini ve \u00fczerlerinde hangi i\u015flemlerin yap\u0131labilece\u011fini \u00f6\u011frendik. Listelerin esnekli\u011fi ve de\u011fi\u015ftirilebilir yap\u0131s\u0131, Tuple&#8217;lar\u0131n veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc sa\u011flayan de\u011fi\u015ftirilemezli\u011fi, K\u00fcmelerin benzersiz \u00f6\u011fe y\u00f6netimi ve h\u0131zl\u0131 \u00fcyelik testleri, ve S\u00f6zl\u00fcklerin anahtar-de\u011fer ili\u015fkisiyle verimli veri e\u015fle\u015ftirmesi gibi kritik noktalar\u0131 derinlemesine ele ald\u0131k.<\/p>\n<p>Python programlamas\u0131nda verimli ve okunabilir kod yazman\u0131n anahtar\u0131, do\u011fru koleksiyonu do\u011fru yerde kullanabilmektir. Hangi koleksiyonun ne zaman tercih edilmesi gerekti\u011fini anlamak, uygulaman\u0131z\u0131n performans\u0131n\u0131, s\u00fcrd\u00fcr\u00fclebilirli\u011fini ve hata tolerans\u0131n\u0131 do\u011frudan etkiler. Ger\u00e7ek d\u00fcnya senaryolar\u0131yla peki\u015ftirdi\u011fimiz bu bilgiler, sadece sentaks\u0131 \u00f6\u011frenmekle kalmay\u0131p, bu yap\u0131lar\u0131 pratik problemlere nas\u0131l uygulayaca\u011f\u0131n\u0131z konusunda da size yol g\u00f6sterdi. Liste anlay\u0131\u015flar\u0131, s\u00f6zl\u00fck anlay\u0131\u015flar\u0131 ve <code>collections<\/code> mod\u00fcl\u00fc gibi ileri d\u00fczey ipu\u00e7lar\u0131 ise kodunuzu daha Pythonik ve g\u00fc\u00e7l\u00fc k\u0131lmak i\u00e7in ek ara\u00e7lar sundu.<\/p>\n<p>Unutmay\u0131n ki programlama s\u00fcrekli bir \u00f6\u011frenme s\u00fcrecidir. Bu koleksiyonlar\u0131 farkl\u0131 senaryolarda deneyerek, kendi projelerinizde uygulayarak ve kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131z sorunlara \u00e7\u00f6z\u00fcm arayarak bilginizi peki\u015ftirebilirsiniz. Python&#8217;\u0131n sundu\u011fu bu zengin veri yap\u0131lar\u0131 sayesinde, karma\u015f\u0131k veri y\u00f6netimi g\u00f6revlerini daha basit ve etkili bir \u015fekilde \u00e7\u00f6zebilecek yetkinli\u011fe sahip oldunuz. \u015eimdi s\u0131ra sizde, bu bilgileri prati\u011fe d\u00f6kerek veri y\u00f6netiminde bir uzman olma yolunda ilerleyin!<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<p><strong>1. Liste ve Tuple aras\u0131ndaki temel fark nedir?<\/strong><br \/>\n    Liste (List) de\u011fi\u015ftirilebilir (mutable) bir koleksiyondur, yani olu\u015fturulduktan sonra \u00f6\u011feleri eklenebilir, silinebilir veya de\u011fi\u015ftirilebilir. K\u00f6\u015feli parantez <code>[]<\/code> ile tan\u0131mlan\u0131r. Tuple (Demet) ise de\u011fi\u015ftirilemez (immutable) bir koleksiyondur; olu\u015fturulduktan sonra \u00f6\u011feleri de\u011fi\u015ftirilemez. Parantez <code>()<\/code> ile tan\u0131mlan\u0131r. Tuple&#8217;lar veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fcn \u00f6nemli oldu\u011fu ve performans\u0131n kritik oldu\u011fu durumlarda tercih edilir.<\/p>\n<p><strong>2. Bir k\u00fcmede (set) neden yinelenen \u00f6\u011feler bulunmaz?<\/strong><br \/>\n    K\u00fcmeler, matematikteki k\u00fcme teorisinden esinlenerek tasarlanm\u0131\u015ft\u0131r ve temel prensiplerinden biri her \u00f6\u011fenin benzersiz olmas\u0131d\u0131r. Bir k\u00fcme, bir \u00f6\u011fenin varl\u0131\u011f\u0131n\u0131 h\u0131zl\u0131 bir \u015fekilde kontrol etmek i\u00e7in optimize edilmi\u015ftir ve bu optimizasyon, yinelenen \u00f6\u011felerin olmamas\u0131n\u0131 gerektirir. Bir k\u00fcme olu\u015ftururken veya bir \u00f6\u011fe eklerken, e\u011fer \u00f6\u011fe zaten k\u00fcmede varsa, i\u015flem hi\u00e7bir etki yaratmaz ve k\u00fcme ayn\u0131 kal\u0131r.<\/p>\n<p><strong>3. S\u00f6zl\u00fck anahtarlar\u0131 neden de\u011fi\u015ftirilemez (immutable) olmal\u0131d\u0131r?<\/strong><br \/>\n    S\u00f6zl\u00fckler, anahtarlar arac\u0131l\u0131\u011f\u0131yla de\u011ferlere h\u0131zl\u0131 eri\u015fim sa\u011flamak i\u00e7in bir &#8220;hash&#8221; mekanizmas\u0131 kullan\u0131r. Anahtarlar\u0131n de\u011fi\u015ftirilemez olmas\u0131, hash de\u011ferlerinin sabit kalmas\u0131n\u0131 sa\u011flar. E\u011fer bir anahtar de\u011fi\u015ftirilebilir olsayd\u0131 ve de\u011feri de\u011fi\u015fseydi, hash de\u011feri de de\u011fi\u015fir ve s\u00f6zl\u00fc\u011f\u00fcn o anahtarla ili\u015fkili de\u011feri bulmas\u0131 imkans\u0131z hale gelirdi. Bu nedenle, say\u0131lar, metinler ve tuple&#8217;lar gibi de\u011fi\u015ftirilemez veri tipleri s\u00f6zl\u00fck anahtar\u0131 olarak kullan\u0131labilirken, listeler gibi de\u011fi\u015ftirilebilir tipler kullan\u0131lamaz.<\/p>\n<p><strong>4. Hangi koleksiyon t\u00fcr\u00fcn\u00fc ne zaman kullanmal\u0131y\u0131m?<\/strong><br \/>\n    *   <strong>Liste:<\/strong> S\u0131ra \u00f6nemliyse, \u00f6\u011feler de\u011fi\u015febilir ve yinelenen \u00f6\u011feler i\u00e7erecekse (\u00f6rn: al\u0131\u015fveri\u015f sepeti, g\u00f6rev listesi).<br \/>\n    *   <strong>Tuple:<\/strong> S\u0131ra \u00f6nemliyse, \u00f6\u011felerin de\u011fi\u015fmez olmas\u0131 gerekiyorsa (\u00f6rn: koordinatlar, RGB renk kodlar\u0131).<br \/>\n    *   <strong>K\u00fcme:<\/strong> Yaln\u0131zca benzersiz \u00f6\u011felerle \u00e7al\u0131\u015f\u0131lacaksa, s\u0131ran\u0131n \u00f6nemi yoksa (\u00f6rn: tekil ziyaret\u00e7iler, ortak ilgi alanlar\u0131 bulma).<br \/>\n    *   <strong>S\u00f6zl\u00fck:<\/strong> Anahtar-de\u011fer ili\u015fkisiyle veri depolanacaksa, anahtar \u00fczerinden h\u0131zl\u0131 eri\u015fim gerekiyorsa (\u00f6rn: kullan\u0131c\u0131 profilleri, \u00fcr\u00fcn kataloglar\u0131).<\/p>\n<p><strong>5. B\u00fcy\u00fck veri setleri i\u00e7in hangi koleksiyon daha performansl\u0131d\u0131r?<\/strong><br \/>\n    B\u00fcy\u00fck veri setlerinde performans, yap\u0131lan i\u015fleme g\u00f6re de\u011fi\u015fir:<br \/>\n    *   <strong>\u00dcyelik testi (<code>in<\/code> operat\u00f6r\u00fc):<\/strong> K\u00fcmeler ve s\u00f6zl\u00fckler (anahtarlar i\u00e7in) listelere g\u00f6re \u00e7ok daha h\u0131zl\u0131d\u0131r.<br \/>\n    *   <strong>Ekleme\/Silme:<\/strong> Listelerin sonuna ekleme h\u0131zl\u0131d\u0131r. Ortadan ekleme\/silme yava\u015ft\u0131r. K\u00fcmelerde ve s\u00f6zl\u00fcklerde ekleme\/silme genellikle verimlidir.<br \/>\n    *   <strong>Veri B\u00fct\u00fcnl\u00fc\u011f\u00fc:<\/strong> De\u011fi\u015fmezlik \u00f6zelli\u011fi sayesinde Tuple&#8217;lar, verilerin yanl\u0131\u015fl\u0131kla de\u011fi\u015ftirilmesini engelleyerek daha g\u00fcvenli bir yap\u0131 sunar.<br \/>\n    Genel olarak, do\u011fru koleksiyonu se\u00e7mek, performans a\u00e7\u0131s\u0131ndan en kritik ad\u0131md\u0131r.<\/p>\n<p>#Python #Koleksiyonlar #PythonDersleri #VeriYap\u0131lar\u0131 #Programlama<\/p>\n<div class=\"github-example-link\"><strong>\u00d6rnek kod:<\/strong> <a href=\"https:\/\/github.com\/fatihsoysalcom\/python-collections-list-tuple-set-dict\" target=\"_blank\" rel=\"noopener noreferrer\">github.com\/fatihsoysalcom\/python-collections-list-tuple-set-dict<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"Veri depolama ve d\u00fczenleme, programlaman\u0131n temelini olu\u015fturur.","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1403],"tags":[],"class_list":{"0":"post-42761","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-python","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Python&#039;da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python&#039;da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc\" \/>\n<meta property=\"og:description\" content=\"Veri depolama ve d\u00fczenleme, programlaman\u0131n temelini olu\u015fturur.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-22T18:03:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-22T18:04:03+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"24 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Python&#8217;da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc\",\"datePublished\":\"2026-06-22T18:03:40+00:00\",\"dateModified\":\"2026-06-22T18:04:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/\"},\"wordCount\":3766,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Python\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/\",\"name\":\"Python'da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-06-22T18:03:40+00:00\",\"dateModified\":\"2026-06-22T18:04:03+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python&#8217;da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Python'da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/","og_locale":"tr_TR","og_type":"article","og_title":"Python'da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc","og_description":"Veri depolama ve d\u00fczenleme, programlaman\u0131n temelini olu\u015fturur.","og_url":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-06-22T18:03:40+00:00","article_modified_time":"2026-06-22T18:04:03+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"24 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Python&#8217;da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc","datePublished":"2026-06-22T18:03:40+00:00","dateModified":"2026-06-22T18:04:03+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/"},"wordCount":3766,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Python"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/","url":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/","name":"Python'da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-06-22T18:03:40+00:00","dateModified":"2026-06-22T18:04:03+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/pythonda-koleksiyonlar-verilerinizi-duzenlemenin-gucu\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Python&#8217;da Koleksiyonlar: Verilerinizi D\u00fczenlemenin G\u00fcc\u00fc"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/42761","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=42761"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/42761\/revisions"}],"predecessor-version":[{"id":42762,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/42761\/revisions\/42762"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=42761"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=42761"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=42761"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}