{"id":460,"date":"2023-09-22T00:24:59","date_gmt":"2023-09-21T21:24:59","guid":{"rendered":"https:\/\/www.facadium.com.tr\/blog\/?p=460"},"modified":"2023-09-22T00:25:21","modified_gmt":"2023-09-21T21:25:21","slug":"demetler-tuples-konusu","status":"publish","type":"post","link":"https:\/\/www.facadium.com.tr\/blog\/demetler-tuples-konusu\/","title":{"rendered":"Demetler (Tuples) Konusu"},"content":{"rendered":"\n<p>Python&#8217;da demetler, listeleri ile ilk ba\u015fta kar\u0131\u015ft\u0131r\u0131l\u0131r. Ancak bu ikisi aras\u0131nda \u00f6nemli farklar bulunmaktad\u0131r. Demetler konusunu \u00f6\u011frenmek isteyenler a\u015fa\u011f\u0131da yazm\u0131\u015f oldu\u011fumuz konu ba\u015fl\u0131klar\u0131n\u0131 \u00f6\u011frenmelidir. Python&#8217;da demetler dersi genellikle \u015fu temel konu ba\u015fl\u0131klar\u0131n\u0131 i\u00e7erir:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Demetlerin Tan\u0131m\u0131:\n<ul class=\"wp-block-list\">\n<li>Demetlerin ne oldu\u011funun tan\u0131m\u0131.<\/li>\n\n\n\n<li>Demetlerin kullan\u0131m alanlar\u0131.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Demet Olu\u015fturma:\n<ul class=\"wp-block-list\">\n<li>Demetlerin nas\u0131l olu\u015fturuldu\u011fu.<\/li>\n\n\n\n<li>Demetlerin \u00f6\u011felerinin nas\u0131l belirtildi\u011fi.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Eleman Eri\u015fimi:\n<ul class=\"wp-block-list\">\n<li>Demet i\u00e7indeki \u00f6\u011felere nas\u0131l eri\u015filece\u011fi.<\/li>\n\n\n\n<li>\u0130ndeksleme ve dilimleme i\u015flemleri.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Demetlerin De\u011fi\u015ftirilemezli\u011fi:\n<ul class=\"wp-block-list\">\n<li>Demetlerin de\u011fi\u015ftirilemez (immutable) oldu\u011fu konusu.<\/li>\n\n\n\n<li>Demetlerin neden de\u011fi\u015ftirilemez oldu\u011funun a\u00e7\u0131klanmas\u0131.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Demetlerin Metotlar\u0131:\n<ul class=\"wp-block-list\">\n<li>Demetlerle kullan\u0131labilen \u00f6nemli metodlar (count, index gibi).<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Demetlerin Avantajlar\u0131:\n<ul class=\"wp-block-list\">\n<li>Demetlerin listelere g\u00f6re hangi durumlarda daha avantajl\u0131 oldu\u011funun a\u00e7\u0131klanmas\u0131.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>D\u00f6ng\u00fcler ve Demetler:\n<ul class=\"wp-block-list\">\n<li>For d\u00f6ng\u00fcs\u00fc kullanarak demetler \u00fczerinde dola\u015fma.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Demetlerin \u0130\u00e7 \u0130\u00e7e Kullan\u0131m\u0131:\n<ul class=\"wp-block-list\">\n<li>\u0130\u00e7 i\u00e7e demetlerin olu\u015fturulmas\u0131 ve kullan\u0131lmas\u0131.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Fonksiyonlar ve Demetler:\n<ul class=\"wp-block-list\">\n<li>Demetleri fonksiyonlarda nas\u0131l kullanabilece\u011finizin \u00f6\u011fretilmesi.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Demet Paketleme ve \u00c7\u00f6zme:\n<ul class=\"wp-block-list\">\n<li>Demetlerin paketleme (packing) ve \u00e7\u00f6zme (unpacking) i\u015flemleri.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>*args ve **kwargs ile Demetler:\n<ul class=\"wp-block-list\">\n<li>*args ve **kwargs arg\u00fcmanlar\u0131n\u0131 kullanarak demetlerin i\u015flenmesi.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Demetlerin Kullan\u0131m \u00d6rnekleri:\n<ul class=\"wp-block-list\">\n<li>Ger\u00e7ek d\u00fcnya \u00f6rnekleriyle demetlerin kullan\u0131m\u0131.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Demetler ve Listeler Aras\u0131ndaki Farklar:\n<ul class=\"wp-block-list\">\n<li>Demetler ile listeler aras\u0131ndaki temel farklar\u0131n vurgulanmas\u0131.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da Demetlerin Tan\u0131m\u0131 ve Kullan\u0131m\u0131<\/strong><\/p>\n\n\n\n<p>Python, kullan\u0131c\u0131lara bir\u00e7ok farkl\u0131 veri yap\u0131s\u0131 sunar. Bunlardan en \u00f6nemlilerinden birisi de demetler (tuples). Demetler ilk ba\u015flarda listeler ile kar\u0131\u015ft\u0131r\u0131lsa da aras\u0131nda \u00f6nemli farklar bulunmaktad\u0131r. Bu farklar\u0131n ba\u015f\u0131nda demetlerin de\u011fi\u015ftirilemez oldu\u011fudur.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Demet Nedir?<\/strong><\/p>\n\n\n\n<p>Demetler, birden fazla \u00f6\u011feyi bir araya getiren ve de\u011fi\u015ftirilemez \u00f6zelli\u011fe sahip veri yap\u0131lar\u0131d\u0131r. De\u011fi\u015ftirilemez olmalar\u0131, bir demetin olu\u015fturulduktan sonra i\u00e7indeki \u00f6\u011felerin eklenemeyece\u011fi, \u00e7\u0131kar\u0131lamayaca\u011f\u0131 veya de\u011fi\u015ftirilemeyece\u011fi anlam\u0131na gelir. Demetler, \u00f6zellikle verilerin korunmas\u0131 gereken durumlarda kullan\u0131l\u0131r ve listelerden farkl\u0131 olarak parantez () i\u00e7inde tan\u0131mlan\u0131r.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Demet Olu\u015fturma<\/strong><\/p>\n\n\n\n<p>Python&#8217;da bir demet olu\u015fturmak i\u00e7in \u015fu y\u00f6ntemleri kullanabilirsiniz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Bo\u015f bir demet olu\u015fturma\r\nbos_demet = ()\r\n\r\n# Elemanlar\u0131yla bir demet olu\u015fturma\r\nrenkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\r\n\r\n# Tek bir eleman i\u00e7eren demet\r\ntek_elemanli_demet = (42,)\r\n\r\n# Parantez kullanmadan da demet tan\u0131mlama\r\ndemet = 1, 2, 3\r<\/code><\/pre>\n\n\n\n<p>Demetlerin i\u00e7inde farkl\u0131 tipte veriler (say\u0131lar, metinler, ba\u015fka demetler) bulunabilir ve kar\u0131\u015f\u0131k tipteki \u00f6\u011feler i\u00e7erebilirler.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Eleman Eri\u015fimi<\/strong><\/p>\n\n\n\n<p>Demetlerdeki \u00f6\u011felere eri\u015fmek i\u00e7in endeksleme kullan\u0131l\u0131r. Endeksler s\u0131f\u0131rdan ba\u015flar ve demet i\u00e7indeki belirli bir \u00f6\u011feyi se\u00e7mek i\u00e7in k\u00f6\u015feli parantezler [] kullan\u0131l\u0131r.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\r\nprint(renkler&#91;0])  # 'k\u0131rm\u0131z\u0131'\r\nprint(renkler&#91;1])  # 'ye\u015fil'\r<\/code><\/pre>\n\n\n\n<p>Ayr\u0131ca dilimleme (slicing) i\u015flemleri de demetlerde kullan\u0131labilir:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\r\nprint(renkler&#91;1:3])  # ('ye\u015fil', 'mavi')\r<\/code><\/pre>\n\n\n\n<p class=\"has-large-font-size\"><strong>Demetlerin De\u011fi\u015ftirilemezli\u011fi<\/strong><\/p>\n\n\n\n<p>Demetlerin en \u00f6nemli \u00f6zelli\u011fi de\u011fi\u015ftirilemez (immutable) olmalar\u0131d\u0131r. Bir demeti olu\u015fturduktan sonra, i\u00e7indeki \u00f6\u011feleri de\u011fi\u015ftiremezsiniz. Bu, demetlerin g\u00fcvenli ve sabit verileri temsil etmek i\u00e7in ideal oldu\u011fu bir\u00e7ok senaryoda faydal\u0131d\u0131r.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\r\nrenkler&#91;0] = 'turuncu'  # Hata! Demetler de\u011fi\u015ftirilemez.\r<\/code><\/pre>\n\n\n\n<p class=\"has-large-font-size\"><strong>Demet Metotlar\u0131<\/strong><\/p>\n\n\n\n<p>Python&#8217;da demetler, baz\u0131 yerle\u015fik metotlarla birlikte gelir. \u0130\u015fte bunlardan baz\u0131lar\u0131:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>count()<\/code>: Belirli bir \u00f6\u011fenin demet i\u00e7inde ka\u00e7 kez ge\u00e7ti\u011fini sayar.<\/li>\n\n\n\n<li><code>index()<\/code>: Belirli bir \u00f6\u011fenin demet i\u00e7indeki ilk konumunu d\u00f6nd\u00fcr\u00fcr.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = (1, 2, 2, 3, 4, 2)\r\nprint(demet.count(2))  # 3\r\nprint(demet.index(3))  # 3\r<\/code><\/pre>\n\n\n\n<p class=\"has-large-font-size\"><strong>Demetlerin Kullan\u0131m Alanlar\u0131<\/strong><\/p>\n\n\n\n<p>Demetler, a\u015fa\u011f\u0131daki senaryolarda s\u0131k\u00e7a kullan\u0131l\u0131r:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Fonksiyonlar\u0131n \u00e7oklu de\u011fer d\u00f6n\u00fc\u015f\u00fcm\u00fc: Bir fonksiyon birden fazla de\u011fer d\u00f6nd\u00fcrmek istedi\u011finde, bu de\u011ferleri bir demet i\u00e7inde d\u00f6nd\u00fcrebilir.<\/li>\n\n\n\n<li>S\u00f6zl\u00fcklerin anahtarlar\u0131 olarak kullanma: Demetler, s\u00f6zl\u00fcklerin anahtarlar\u0131 olarak kullan\u0131labilir, \u00e7\u00fcnk\u00fc de\u011fi\u015ftirilemezdirler ve bu nedenle s\u00f6zl\u00fcklerin anahtarlar\u0131 olarak g\u00fcvenle kullan\u0131labilirler.<\/li>\n\n\n\n<li>Verilerin korunmas\u0131 gereken durumlar: Demetler, i\u00e7erdikleri verilerin de\u011fi\u015ftirilmesini \u00f6nlemek i\u00e7in kullan\u0131l\u0131r ve bu nedenle hassas verilerin saklanmas\u0131 veya iletilmesi gerekti\u011finde tercih edilirler.<\/li>\n<\/ul>\n\n\n\n<p>Python&#8217;da demetler, veri yap\u0131lar\u0131n\u0131n \u00e7e\u015fitlili\u011fini art\u0131r\u0131rken, ayn\u0131 zamanda verilerin g\u00fcvenli\u011fini ve tutarl\u0131l\u0131\u011f\u0131n\u0131 sa\u011flamak i\u00e7in de kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n\n\n\n<p>Bu makalede Python&#8217;da demetlerin temel kavramlar\u0131na ve kullan\u0131m\u0131na dair bir giri\u015f yapt\u0131k. Demetleri anlad\u0131\u011f\u0131n\u0131zda, veri i\u015fleme yeteneklerinizi daha da geni\u015fletebilirsiniz.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da Demet Olu\u015fturma: \u00d6rneklerle A\u00e7\u0131klama<\/strong><\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Bo\u015f Bir Demet Olu\u015fturma<\/strong><\/p>\n\n\n\n<p>Bo\u015f bir demet olu\u015fturmak i\u00e7in parantezleri kullanabilirsiniz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bos_demet = ()\r\nprint(bos_demet)  # ()\r<\/code><\/pre>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Elemanlar\u0131yla Bir Demet Olu\u015fturma<\/strong><\/p>\n\n\n\n<p>Demetler genellikle elemanlarla birlikte olu\u015fturulur:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\r\nprint(renkler)  # ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\r<\/code><\/pre>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Tek Elemanl\u0131 Demet<\/strong><\/p>\n\n\n\n<p>Tek elemanl\u0131 bir demet olu\u015ftururken, eleman\u0131n sonuna virg\u00fcl eklemelisiniz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>tek_elemanli_demet = (42,)\nprint(tek_elemanli_demet)  # (42,)<\/code><\/pre>\n\n\n\n<p>Virg\u00fcl\u00fcn olmamas\u0131 durumunda Python, bir de\u011fi\u015fkeni tek bir \u00f6\u011fe i\u00e7eren bir demet olarak tan\u0131mlamaz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>tek_elemanli_demet = (42)\r\nprint(tek_elemanli_demet)  # 42 (demet de\u011fil)\r<\/code><\/pre>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Parantez Kullanmadan Demet Olu\u015fturma<\/strong><\/p>\n\n\n\n<p>Parantez kullanmadan da demet tan\u0131mlayabilirsiniz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = 1, 2, 3\r\nprint(demet)  # (1, 2, 3)\r<\/code><\/pre>\n\n\n\n<p>Bu \u015fekilde tan\u0131mlanan demetler de ayn\u0131 \u015fekilde \u00e7al\u0131\u015f\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Kar\u0131\u015f\u0131k T\u00fcrlerle Demetler<\/strong><\/p>\n\n\n\n<p>Demetler, farkl\u0131 t\u00fcrdeki \u00f6\u011feleri i\u00e7erebilir:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>karisik_demet = (1, 'iki', 3.0, &#91;4, 5])\r\nprint(karisik_demet)  # (1, 'iki', 3.0, &#91;4, 5])\r<\/code><\/pre>\n\n\n\n<p>Yukar\u0131daki \u00f6rnek, demetlerin \u00e7ok \u00e7e\u015fitli veri tiplerini bir araya getirebilece\u011fini g\u00f6stermektedir.<\/p>\n\n\n\n<p>Demetler, verileri grupland\u0131rmak ve onlar\u0131 de\u011fi\u015ftirilmez yapmak i\u00e7in kullan\u0131\u015fl\u0131d\u0131r. Bu nedenle, programlar\u0131n\u0131zda de\u011fi\u015ftirilemeyen veri yap\u0131lara ihtiya\u00e7 duydu\u011funuzda demetleri d\u00fc\u015f\u00fcnmelisiniz.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da Demet \u0130\u00e7indeki \u00d6\u011felere Eri\u015fme<\/strong><\/p>\n\n\n\n<p>Python&#8217;da demetler (tuples), de\u011fi\u015ftirilemeyen ve s\u0131ral\u0131 veri yap\u0131lar\u0131d\u0131r. Demetler i\u00e7inde birden \u00e7ok \u00f6\u011feyi bir araya getirebilirler, ancak bu \u00f6\u011felere eri\u015fmek i\u00e7in baz\u0131 temel y\u00f6ntemler ve endeksleme kullanmal\u0131s\u0131n\u0131z.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Demetlerin Temel \u00d6zellikleri<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Demetler, parantez i\u00e7inde tan\u0131mlan\u0131r: <code>(eleman1, eleman2, eleman3, ...)<\/code><\/li>\n\n\n\n<li>Demetler, s\u0131ral\u0131d\u0131r, yani \u00f6\u011felerin bir s\u0131ras\u0131 vard\u0131r.<\/li>\n\n\n\n<li>Demetler, de\u011fi\u015ftirilemezdir, yani bir demet olu\u015fturulduktan sonra i\u00e7indeki \u00f6\u011feleri de\u011fi\u015ftiremezsiniz.<\/li>\n<\/ul>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Elemanlara \u0130ndeksleme ile Eri\u015fme<\/strong><\/p>\n\n\n\n<p>Demetlerdeki \u00f6\u011felere eri\u015fmek i\u00e7in endeksleme kullan\u0131l\u0131r. Endeksler s\u0131f\u0131rdan ba\u015flar ve demetin belirli bir \u00f6\u011fesine eri\u015fmek i\u00e7in k\u00f6\u015feli parantez i\u00e7inde endeks numaras\u0131n\u0131 kullanabilirsiniz.<\/p>\n\n\n\n<p>\u00d6rnek bir demet olu\u015ftural\u0131m ve i\u00e7indeki \u00f6\u011felere eri\u015felim:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\r\nilk_renk = renkler&#91;0]\r\nikinci_renk = renkler&#91;1]\r\nucuncu_renk = renkler&#91;2]\r\n\r\nprint(ilk_renk)      # 'k\u0131rm\u0131z\u0131'\r\nprint(ikinci_renk)   # 'ye\u015fil'\r\nprint(ucuncu_renk)   # 'mavi'\r<\/code><\/pre>\n\n\n\n<p>Yukar\u0131daki \u00f6rnekte, <code>renkler<\/code> adl\u0131 demetin i\u00e7indeki \u00f6\u011felere endeks numaralar\u0131yla eri\u015febiliriz. \u0130lk renk i\u00e7in endeks 0, ikinci renk i\u00e7in endeks 1 ve \u00fc\u00e7\u00fcnc\u00fc renk i\u00e7in endeks 2 kullan\u0131ld\u0131.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Negatif \u0130ndeksleme ile Eri\u015fme<\/strong><\/p>\n\n\n\n<p>Demetlerde \u00f6\u011felere negatif endeksleme kullanarak sondan ba\u015flayarak da eri\u015febilirsiniz. -1 son \u00f6\u011feyi, -2 sondan bir \u00f6nceki \u00f6\u011feyi temsil eder.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\nson_renk = renkler&#91;-1]\nbir_onceki_renk = renkler&#91;-2]\n\nprint(son_renk)          # 'mavi'\nprint(bir_onceki_renk)   # 'ye\u015fil'<\/code><\/pre>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Dilimleme (Slicing) ile Eri\u015fme<\/strong><\/p>\n\n\n\n<p>Dilimleme, demet i\u00e7indeki bir aral\u0131\u011f\u0131 se\u00e7menizi sa\u011flar. Dilimleme kullanarak bir ba\u015flang\u0131\u00e7 ve biti\u015f endeksi belirleyebilirsiniz.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi', 'sar\u0131', 'mor')\r\nalt_demet = renkler&#91;1:4]\r\n\r\nprint(alt_demet)  # ('ye\u015fil', 'mavi', 'sar\u0131')\r<\/code><\/pre>\n\n\n\n<p>Dilimleme i\u015flemi ile se\u00e7ilen \u00f6\u011feler, yeni bir demet i\u00e7inde saklan\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\u00d6\u011felerin Varl\u0131\u011f\u0131n\u0131 Kontrol Etme<\/strong><\/p>\n\n\n\n<p>Bir \u00f6\u011fenin demet i\u00e7inde bulunup bulunmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in <code>in<\/code> operat\u00f6r\u00fcn\u00fc kullanabilirsiniz.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\r\nvar_mi = 'k\u0131rm\u0131z\u0131' in renkler\r\n\r\nprint(var_mi)  # True\r<\/code><\/pre>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Demetlerin \u0130\u00e7 \u0130\u00e7e Kullan\u0131m\u0131<\/strong><\/p>\n\n\n\n<p>Demetler i\u00e7 i\u00e7e kullan\u0131labilir. \u0130\u00e7 i\u00e7e demetler olu\u015fturabilir ve bu demetlerin i\u00e7indeki \u00f6\u011felere benzer \u015fekilde eri\u015febilirsiniz.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = ((1, 2), ('a', 'b', 'c'), ('x', 'y', 'z'))\r\nikinci_demetin_ilk_elemani = demet&#91;1]&#91;0]\r\n\r\nprint(ikinci_demetin_ilk_elemani)  # 'a'\r<\/code><\/pre>\n\n\n\n<p>Yukar\u0131daki \u00f6rnek, demetlerin i\u00e7 i\u00e7e kullan\u0131m\u0131n\u0131 ve \u00f6\u011felere nas\u0131l eri\u015filece\u011fini g\u00f6stermektedir.<\/p>\n\n\n\n<p>Demetler, de\u011fi\u015ftirilemez olmalar\u0131 ve i\u00e7indeki \u00f6\u011felere eri\u015fmenin kolayl\u0131\u011f\u0131 nedeniyle Python programlamada s\u0131k\u00e7a kullan\u0131l\u0131r. \u0130htiyac\u0131n\u0131za ba\u011fl\u0131 olarak, demetler listelerden daha uygun olabilir \u00e7\u00fcnk\u00fc i\u00e7erdikleri verileri de\u011fi\u015ftiremezler ve bu nedenle verilerin g\u00fcvenli\u011fini ve tutarl\u0131l\u0131\u011f\u0131n\u0131 sa\u011flarlar.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da \u0130ndeksleme ve Dilimleme \u0130\u015flemleri<\/strong><\/p>\n\n\n\n<p>Python programlamada, veri koleksiyonlar\u0131ndan \u00f6\u011felere eri\u015fmek ve bu \u00f6\u011feleri i\u015flemek i\u00e7in indeksleme ve dilimleme i\u015flemleri yayg\u0131n olarak kullan\u0131l\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\u0130ndeksleme Nedir?<\/strong><\/p>\n\n\n\n<p><strong>\u0130ndeksleme<\/strong>, bir veri koleksiyonundaki belirli bir \u00f6\u011feye eri\u015fmek i\u00e7in kullan\u0131lan bir i\u015flemdir. Python&#8217;da, listeler, demetler ve dizeler gibi s\u0131ral\u0131 veri yap\u0131lar\u0131 indeksleme ile eri\u015filebilirler. \u0130ndeksler, s\u0131f\u0131rdan ba\u015flayarak numaraland\u0131r\u0131l\u0131r, yani ilk \u00f6\u011fe 0, ikinci \u00f6\u011fe 1 ve b\u00f6yle devam eder.<\/p>\n\n\n\n<p><strong>\u00d6rnek: Liste \u0130ndeksleme<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>meyveler = &#91;'elma', 'armut', 'muz', '\u00e7ilek']\r\n\r\nilk_meyve = meyveler&#91;0]  # \u0130lk \u00f6\u011fe (elma)\r\nikinci_meyve = meyveler&#91;1]  # \u0130kinci \u00f6\u011fe (armut)\r\n\r\nprint(ilk_meyve)     # elma\r\nprint(ikinci_meyve)  # armut\r<\/code><\/pre>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Dilimleme (Slicing) Nedir?<\/strong><\/p>\n\n\n\n<p><strong>Dilimleme<\/strong>, bir veri koleksiyonundan belirli bir aral\u0131ktaki \u00f6\u011feleri se\u00e7mek i\u00e7in kullan\u0131lan bir i\u015flemdir. Python&#8217;da dilimleme, koleksiyonun bir alt k\u00fcmesini yeni bir koleksiyon olarak olu\u015fturur. Dilimleme i\u015flemi i\u00e7in ba\u015flang\u0131\u00e7 ve biti\u015f indeksleri belirtirsiniz. Ba\u015flang\u0131\u00e7 indeksi dahil edilirken, biti\u015f indeksi dahil edilmez.<\/p>\n\n\n\n<p><strong>\u00d6rnek: Liste Dilimleme<\/strong><\/p>\n\n\n\n<p>Dilimleme i\u015flemi sonucunda yeni bir liste elde edersiniz. Ba\u015flang\u0131\u00e7 ve biti\u015f indekslerini belirtirken dilimlemenin hangi \u00f6\u011feleri i\u00e7erece\u011fini ayarlayabilirsiniz.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Negatif \u0130ndeksleme<\/strong><\/p>\n\n\n\n<p>Python&#8217;da negatif indeksleme de kullanabilirsiniz. Negatif indeksler, sondan ba\u015flayarak say\u0131l\u0131r. -1 son \u00f6\u011feyi temsil eder, -2 sondan bir \u00f6nceki \u00f6\u011feyi temsil eder ve b\u00f6yle devam eder.<\/p>\n\n\n\n<p><strong>\u00d6rnek: Negatif \u0130ndeksleme<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>meyveler = &#91;'elma', 'armut', 'muz', '\u00e7ilek']\r\n\r\nson_meyve = meyveler&#91;-1]  # Son \u00f6\u011fe (\u00e7ilek)\r\nbir_onceki_meyve = meyveler&#91;-2]  # Son \u00f6nceki \u00f6\u011fe (muz)\r\n\r\nprint(son_meyve)          # \u00e7ilek\r\nprint(bir_onceki_meyve)   # muz\r<\/code><\/pre>\n\n\n\n<p>Negatif indeksleme, koleksiyonun sonundan ba\u015flayarak \u00f6\u011felere eri\u015fmek i\u00e7in kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Dilimleme ile Ad\u0131m Belirtme<\/strong><\/p>\n\n\n\n<p>Dilimleme i\u015flemi s\u0131ras\u0131nda ad\u0131m (step) belirtmek de m\u00fcmk\u00fcnd\u00fcr. Ad\u0131m, ka\u00e7 \u00f6\u011fe atlanarak dilimlemenin yap\u0131laca\u011f\u0131n\u0131 belirler.<\/p>\n\n\n\n<p><strong>\u00d6rnek: Dilimleme ile Ad\u0131m Belirtme<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sayilar = &#91;0, 1, 2, 3, 4, 5, 6, 7, 8, 9]\r\n\r\ntek_sayilar = sayilar&#91;1::2]  # 1'den ba\u015flayarak her iki \u00f6\u011feyi al (1, 3, 5, 7, 9)\r\n\r\nprint(tek_sayilar)  # &#91;1, 3, 5, 7, 9]\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>1::2<\/code> dilimleme i\u015flemi ile 1&#8217;den ba\u015flayarak her iki \u00f6\u011fe al\u0131nm\u0131\u015ft\u0131r.<\/p>\n\n\n\n<p>\u0130ndeksleme ve dilimleme, Python&#8217;da veri koleksiyonlar\u0131ndan \u00f6\u011felere eri\u015fmenin ve bu \u00f6\u011feleri i\u015flemenin \u00f6nemli y\u00f6ntemleridir. Bu i\u015flemleri kullanarak verilerinizi se\u00e7ebilir, d\u00f6n\u00fc\u015ft\u00fcrebilir ve i\u015fleyebilirsiniz. \u0130ndeksleme ve dilimleme, Python programlamas\u0131n\u0131n temel ta\u015flar\u0131ndan biridir ve veri manip\u00fclasyonunda s\u0131k\u00e7a kullan\u0131l\u0131r.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da Demetlerin De\u011fi\u015ftirilemez (Immutable) Olmas\u0131<\/strong><\/p>\n\n\n\n<p>Python programlamada, veri yap\u0131lar\u0131 belirli \u00f6zelliklere sahiptir ve bunlardan biri <strong>demetlerin de\u011fi\u015ftirilemez (immutable) olmas\u0131d\u0131r<\/strong>. Bu \u00f6zellik, demetlerin bir kez olu\u015fturulduktan sonra i\u00e7eriklerinin de\u011fi\u015ftirilemeyece\u011fi anlam\u0131na gelir. Bu makalede, Python&#8217;da demetlerin neden de\u011fi\u015ftirilemez oldu\u011funu ve bu \u00f6zelli\u011fin ne gibi avantajlar sundu\u011funu a\u00e7\u0131klayaca\u011f\u0131z.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Demetler Neden De\u011fi\u015ftirilemezdir?<\/strong><\/p>\n\n\n\n<p>Python&#8217;da demetlerin de\u011fi\u015ftirilemez olmas\u0131n\u0131n nedenleri vard\u0131r:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>G\u00fcvenlik ve Tutarl\u0131l\u0131k<\/strong>: Demetler, i\u00e7eriklerinin de\u011fi\u015ftirilemez olmas\u0131 sayesinde verilerin g\u00fcvenli\u011fi ve tutarl\u0131l\u0131\u011f\u0131 sa\u011flar. Bir kez olu\u015fturulduktan sonra, demetin i\u00e7eri\u011fi de\u011fi\u015ftirilemez ve bu \u00f6zellik, verilerin beklenmeyen de\u011fi\u015fikliklerden korunmas\u0131na yard\u0131mc\u0131 olur.<\/li>\n\n\n\n<li><strong>S\u00f6zl\u00fck Anahtarlar\u0131 Olarak Kullan\u0131labilir<\/strong>: De\u011fi\u015ftirilemez \u00f6zellikleri sayesinde, demetler s\u00f6zl\u00fcklerin anahtarlar\u0131 olarak kullan\u0131labilirler. Listeler bu ama\u00e7 i\u00e7in kullan\u0131lamaz \u00e7\u00fcnk\u00fc de\u011fi\u015ftirilebilirler ve bir s\u00f6zl\u00fck anahtar\u0131n\u0131n sabit olmas\u0131 gerekir.<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>sozluk = {('anahtar', 'demet'): 'de\u011fer'}\r<\/code><\/pre>\n\n\n\n<p><strong>Performans<\/strong>: Demetler, listelere g\u00f6re daha h\u0131zl\u0131 ve daha az bellek t\u00fcketen veri yap\u0131lar\u0131d\u0131r, \u00e7\u00fcnk\u00fc de\u011fi\u015ftirilemezlik, baz\u0131 optimizasyonlar\u0131 m\u00fcmk\u00fcn k\u0131lar.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Demetlerin Kullan\u0131m Alanlar\u0131<\/strong><\/p>\n\n\n\n<p>Demetler, a\u015fa\u011f\u0131daki durumlarda s\u0131kl\u0131kla kullan\u0131l\u0131r:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>S\u00f6zl\u00fck Anahtarlar\u0131<\/strong>: Demetler, s\u00f6zl\u00fcklerin anahtarlar\u0131 olarak kullan\u0131ld\u0131\u011f\u0131nda, s\u00f6zl\u00fcklerin belirli ve sabit anahtarlarla \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar.<\/li>\n\n\n\n<li><strong>Fonksiyonlarda \u00c7oklu De\u011fer D\u00f6nd\u00fcrme<\/strong>: Bir fonksiyon birden fazla de\u011fer d\u00f6nd\u00fcrmek istedi\u011finde, bu de\u011ferleri bir demet i\u00e7inde d\u00f6nd\u00fcrebilir. Bu, bir i\u015flevin birden fazla sonucunu daha kolay \u015fekilde i\u015flememize olanak tan\u0131r.<\/li>\n\n\n\n<li><strong>Verilerin Korunmas\u0131 Gereken Durumlar<\/strong>: Demetler, verilerin korunmas\u0131 gereken durumlarda kullan\u0131l\u0131r. \u00d6rne\u011fin, bir tarih bilgisini veya bir co\u011frafi koordinat\u0131 temsil etmek i\u00e7in demetler kullan\u0131\u015fl\u0131d\u0131r.<\/li>\n\n\n\n<li><strong>Fonksiyonlara De\u011fi\u015ftirilemez Arg\u00fcmanlar Ge\u00e7irme<\/strong>: Demetler, fonksiyonlara de\u011fi\u015ftirilemez (de\u011fi\u015fmez) arg\u00fcmanlar ge\u00e7irerek verilerin yanl\u0131\u015fl\u0131kla de\u011fi\u015ftirilmesini \u00f6nler.<\/li>\n<\/ol>\n\n\n\n<p>Python&#8217;da demetlerin de\u011fi\u015ftirilemez olmas\u0131, verilerin g\u00fcvenli\u011fi, s\u00f6zl\u00fcklerde anahtar olarak kullan\u0131labilirlik ve performans gibi bir\u00e7ok avantaj sunar. Bu nedenle, verileri de\u011fi\u015ftirilmesini istemedi\u011finiz durumlarda demetleri tercih etmek \u00f6nemlidir. Demetler, Python programlamas\u0131nda \u00f6nemli bir veri yap\u0131s\u0131d\u0131r ve programlar\u0131n\u0131z\u0131n g\u00fcvenli\u011fi ve tutarl\u0131l\u0131\u011f\u0131 i\u00e7in \u00e7ok kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>De\u011fi\u015ftirilemezli\u011fin Avantajlar\u0131<\/strong><\/p>\n\n\n\n<p>Demetlerin de\u011fi\u015ftirilemez olmas\u0131n\u0131n baz\u0131 avantajlar\u0131 vard\u0131r:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>G\u00fcvenlik<\/strong>: Hassas verileri temsil eden demetler, verilerin istenmeyen de\u011fi\u015fikliklerden korunmas\u0131n\u0131 sa\u011flar.<\/li>\n\n\n\n<li><strong>Tutarl\u0131l\u0131k<\/strong>: Bir demet olu\u015fturuldu\u011funda, i\u00e7eri\u011fin de\u011fi\u015fmezli\u011fi, program\u0131n beklenmedik sonu\u00e7lar vermesini \u00f6nler.<\/li>\n\n\n\n<li><strong>S\u00f6zl\u00fcklerle Uyumluluk<\/strong>: Demetler, s\u00f6zl\u00fcklerin anahtarlar\u0131 olarak kullan\u0131labilir ve bu, verileri d\u00fczenlemek ve eri\u015fmek i\u00e7in kullan\u0131lan \u00f6nemli bir \u00f6zelliktir.<\/li>\n\n\n\n<li><strong>Performans<\/strong>: De\u011fi\u015ftirilemez veri yap\u0131lar\u0131, baz\u0131 durumlarda i\u015flemlerin daha h\u0131zl\u0131 \u00e7al\u0131\u015fmas\u0131na yard\u0131mc\u0131 olabilir.<\/li>\n<\/ul>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da Demetlerle Kullan\u0131labilen Baz\u0131 \u00d6nemli Metodlar<\/strong><\/p>\n\n\n\n<p><br>Elbette! Python&#8217;da demetlerle kullan\u0131labilen baz\u0131 \u00f6nemli metodlar\u0131 a\u015fa\u011f\u0131da \u00f6rneklerle birlikte a\u00e7\u0131klayaca\u011f\u0131m:<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>1. <code>count()<\/code> Metodu<\/strong><\/p>\n\n\n\n<p><code>count()<\/code> metodu, demet i\u00e7inde belirli bir \u00f6\u011fenin ka\u00e7 kez ge\u00e7ti\u011fini sayar.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = (1, 2, 3, 2, 4, 2, 5)\r\n\r\n# 2 \u00f6\u011fesi demet i\u00e7inde ka\u00e7 kez ge\u00e7iyor?\r\nsayi_iki_adet = demet.count(2)\r\n\r\nprint(sayi_iki_adet)  # 3\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>count(2)<\/code> ifadesi ile demet i\u00e7inde 2 rakam\u0131n\u0131n ka\u00e7 kez ge\u00e7ti\u011fini hesapl\u0131yoruz.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>2. <code>index()<\/code> Metodu<\/strong><\/p>\n\n\n\n<p><code>index()<\/code> metodu, belirli bir \u00f6\u011fenin demet i\u00e7indeki ilk indeksini d\u00f6nd\u00fcr\u00fcr.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = ('elma', 'armut', 'muz', '\u00e7ilek')\r\n\r\n# 'muz' \u00f6\u011fesi demet i\u00e7inde hangi indekste?\r\nmuz_indeksi = demet.index('muz')\r\n\r\nprint(muz_indeksi)  # 2\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>index('muz')<\/code> ifadesi ile &#8216;muz&#8217; kelimesinin demet i\u00e7indeki indeksini buluyoruz.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>3. <code>len()<\/code> Fonksiyonu<\/strong><\/p>\n\n\n\n<p><code>len()<\/code> fonksiyonu, bir demetin i\u00e7inde ka\u00e7 \u00f6\u011fe oldu\u011funu d\u00f6nd\u00fcr\u00fcr. \u0130\u015fte bir \u00f6rnek:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = (10, 20, 30, 40, 50)\r\n\r\n# Demetin i\u00e7inde ka\u00e7 \u00f6\u011fe var?\r\ndemet_uzunlugu = len(demet)\r\n\r\nprint(demet_uzunlugu)  # 5\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>len()<\/code> fonksiyonu ile demetin i\u00e7indeki \u00f6\u011fe say\u0131s\u0131n\u0131 hesapl\u0131yoruz.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>4. <code>sorted()<\/code> Fonksiyonu<\/strong><\/p>\n\n\n\n<p><code>sorted()<\/code> fonksiyonu, bir demeti s\u0131ralamak i\u00e7in kullan\u0131l\u0131r. Ancak, s\u0131ralanan demet yeni bir liste olarak d\u00f6ner.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = (4, 1, 7, 3, 9, 2)\r\n\r\n# Demeti k\u00fc\u00e7\u00fckten b\u00fcy\u00fc\u011fe s\u0131rala\r\nsirali_liste = sorted(demet)\r\n\r\nprint(sirali_liste)  # &#91;1, 2, 3, 4, 7, 9]\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>sorted()<\/code> fonksiyonu ile demeti s\u0131ralayarak yeni bir listeyi elde ediyoruz.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>5. <code>max()<\/code> ve <code>min()<\/code> Fonksiyonlar\u0131<\/strong><\/p>\n\n\n\n<p><code>max()<\/code> ve <code>min()<\/code> fonksiyonlar\u0131, bir demetin i\u00e7indeki en b\u00fcy\u00fck ve en k\u00fc\u00e7\u00fck \u00f6\u011feleri bulmak i\u00e7in kullan\u0131l\u0131r.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = (12, 45, 7, 23, 56, 34)\r\n\r\n# Demetin i\u00e7indeki en b\u00fcy\u00fck ve en k\u00fc\u00e7\u00fck \u00f6\u011feler\r\nen_buyuk = max(demet)\r\nen_kucuk = min(demet)\r\n\r\nprint(en_buyuk)  # 56\r\nprint(en_kucuk)  # 7\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>max()<\/code> ve <code>min()<\/code> fonksiyonlar\u0131 ile demetin i\u00e7indeki en b\u00fcy\u00fck ve en k\u00fc\u00e7\u00fck \u00f6\u011feleri buluyoruz.<\/p>\n\n\n\n<p>Bu metodlar, demetlerle \u00e7al\u0131\u015f\u0131rken s\u0131k\u00e7a kullan\u0131lan ve i\u015flem kolayl\u0131\u011f\u0131 sa\u011flayan baz\u0131 temel ara\u00e7lard\u0131r. Demetlerin de\u011fi\u015ftirilemez oldu\u011fu i\u00e7in bu metodlar demet i\u00e7eri\u011fini de\u011fi\u015ftirmezler, sadece bilgi alman\u0131za yard\u0131mc\u0131 olurlar.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da Demetler \u00dczerinde D\u00f6ng\u00fc Kullan\u0131m\u0131<\/strong><\/p>\n\n\n\n<p>Python programlamada, demetler (tuples) s\u0131k\u00e7a kullan\u0131lan veri yap\u0131s\u0131d\u0131r ve bu demetler \u00fczerinde i\u015flem yapmak i\u00e7in <code>for<\/code> d\u00f6ng\u00fcs\u00fc olduk\u00e7a kullan\u0131\u015fl\u0131d\u0131r. <code>for<\/code> d\u00f6ng\u00fcs\u00fc, demet i\u00e7indeki her bir \u00f6\u011feye s\u0131rayla eri\u015fmenizi ve bu \u00f6\u011feleri i\u015flemenizi sa\u011flar.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Demetler \u00dczerinde <code>for<\/code> D\u00f6ng\u00fcs\u00fc Kullan\u0131m\u0131<\/strong><\/p>\n\n\n\n<p>Demetler \u00fczerinde d\u00f6ng\u00fc kullanarak, her bir \u00f6\u011feye s\u0131rayla eri\u015febilirsiniz.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\r\n\r\nfor renk in renkler:\r\n    print(renk)\r<\/code><\/pre>\n\n\n\n<p>Bu kod, <code>renkler<\/code> demeti i\u00e7indeki her bir \u00f6\u011feyi (<code>'k\u0131rm\u0131z\u0131'<\/code>, <code>'ye\u015fil'<\/code>, <code>'mavi'<\/code>) s\u0131rayla al\u0131r ve ekrana yazd\u0131r\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\u0130ndeks ile Birlikte Dola\u015fma<\/strong><\/p>\n\n\n\n<p>Baz\u0131 durumlarda, \u00f6\u011felerin yan\u0131 s\u0131ra indekslere de ihtiya\u00e7 duyabilirsiniz. Bu durumda, <code>enumerate()<\/code> fonksiyonunu kullanabilirsiniz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = ('k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi')\r\n\r\nfor indeks, renk in enumerate(renkler):\r\n    print(f\"Renk {indeks + 1}: {renk}\")\r<\/code><\/pre>\n\n\n\n<p>Bu kod, <code>enumerate()<\/code> ile demet i\u00e7indeki \u00f6\u011felerin yan\u0131 s\u0131ra indekslerini de al\u0131r ve ekrana yazd\u0131r\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Demetler \u00dczerinde <code>for<\/code> D\u00f6ng\u00fcs\u00fc ile \u0130\u015flem Yapma<\/strong><\/p>\n\n\n\n<p><code>for<\/code> d\u00f6ng\u00fcs\u00fcn\u00fc kullanarak, demet i\u00e7indeki \u00f6\u011felere eri\u015fip bu \u00f6\u011feler \u00fczerinde i\u015flem yapabilirsiniz. \u00d6rne\u011fin, demet i\u00e7indeki say\u0131lar\u0131 toplamak i\u00e7in a\u015fa\u011f\u0131daki kodu kullanabilirsiniz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sayilar = (1, 2, 3, 4, 5)\r\ntoplam = 0\r\n\r\nfor sayi in sayilar:\r\n    toplam += sayi\r\n\r\nprint(\"Toplam:\", toplam)\r<\/code><\/pre>\n\n\n\n<p>Bu kod, <code>sayilar<\/code> demeti i\u00e7indeki her bir say\u0131y\u0131 toplayarak sonucu ekrana yazd\u0131r\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Python&#8217;da \u0130\u00e7 \u0130\u00e7e Demetlerin Kullan\u0131m\u0131<\/strong><\/p>\n\n\n\n<p>Python programlamada, i\u00e7 i\u00e7e demetler (nested tuples) \u00e7oklu seviyede veri yap\u0131lar\u0131 olu\u015fturman\u0131za ve karma\u015f\u0131k verileri d\u00fczenlemenize olanak tan\u0131r. \u0130\u00e7 i\u00e7e demetler, her bir demetin i\u00e7inde ba\u015fka bir demetin bulunmas\u0131n\u0131 ifade eder.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\u0130\u00e7 \u0130\u00e7e Demetlerin Olu\u015fturulmas\u0131<\/strong><\/p>\n\n\n\n<p>\u0130\u00e7 i\u00e7e demetler olu\u015fturmak olduk\u00e7a basittir.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># \u0130\u00e7 i\u00e7e demetler\r\ndemet1 = (1, 2, 3)\r\ndemet2 = ('a', 'b', 'c')\r\ni\u00e7_ice_demet = (demet1, demet2)\r\nprint(i\u00e7_ice_demet)\r<\/code><\/pre>\n\n\n\n<p>Bu kod, <code>demet1<\/code> ve <code>demet2<\/code> adl\u0131 iki demeti i\u00e7 i\u00e7e bir demet olan <code>i\u00e7_ice_demet<\/code> i\u00e7inde bir araya getirir.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\u0130\u00e7 \u0130\u00e7e Demetlerin Kullan\u0131lmas\u0131<\/strong><\/p>\n\n\n\n<p>\u0130\u00e7 i\u00e7e demetler olu\u015fturduktan sonra bu verileri kullanabilirsiniz.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>matris = ((1, 2, 3), (4, 5, 6), (7, 8, 9))\r\n\r\n# Matrisin sat\u0131rlar\u0131n\u0131 yazd\u0131rma\r\nfor satir in matris:\r\n    print(satir)\r\n\r\n# Belirli bir elemana eri\u015fme\r\neleman = matris&#91;1]&#91;2]\r\nprint(\"Eleman:\", eleman)\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnek, i\u00e7 i\u00e7e demetlerle bir 3&#215;3 matrisi temsil eder ve bu matrisin sat\u0131rlar\u0131n\u0131 ve belirli bir eleman\u0131n\u0131 nas\u0131l eri\u015fece\u011finizi g\u00f6sterir.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\u0130\u00e7 \u0130\u00e7e Demetlerin Avantajlar\u0131<\/strong><\/p>\n\n\n\n<p>\u0130\u00e7 i\u00e7e demetler, karma\u015f\u0131k veri yap\u0131lar\u0131n\u0131 temsil etmek ve d\u00fczenlemek i\u00e7in kullan\u0131l\u0131r. \u0130\u015fte baz\u0131 avantajlar\u0131:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Yap\u0131sal D\u00fczen<\/strong>: \u0130\u00e7 i\u00e7e demetler, verilerinizi hiyerar\u015fik bir yap\u0131da d\u00fczenlemenizi sa\u011flar. Bu, karma\u015f\u0131k veri yap\u0131lar\u0131n\u0131 daha iyi organize etmenize yard\u0131mc\u0131 olur.<\/li>\n\n\n\n<li><strong>\u0130\u015flevsellik<\/strong>: \u0130\u00e7 i\u00e7e demetlerle, \u00e7ok boyutlu verileri temsil etmek ve bu veriler \u00fczerinde i\u015flem yapmak daha kolayd\u0131r. \u00d6zellikle matrisler ve tablolar gibi yap\u0131lar\u0131 temsil etmek i\u00e7in kullan\u0131\u015fl\u0131d\u0131r.<\/li>\n\n\n\n<li><strong>De\u011fi\u015ftirilemezlik<\/strong>: Demetlerin de\u011fi\u015ftirilemez (immutable) olmas\u0131, i\u00e7 i\u00e7e demetlerin istemeden de\u011fi\u015ftirilmesini \u00f6nler. Bu, verilerin g\u00fcvenli\u011fi ve tutarl\u0131l\u0131\u011f\u0131 a\u00e7\u0131s\u0131ndan \u00f6nemlidir.<\/li>\n<\/ol>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Sonu\u00e7<\/strong><\/p>\n\n\n\n<p>Python&#8217;da i\u00e7 i\u00e7e demetler, karma\u015f\u0131k veri yap\u0131lar\u0131n\u0131 temsil etmek ve d\u00fczenlemek i\u00e7in g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r. Bu demetleri olu\u015fturarak ve kullanarak, verilerinizi daha iyi organize edebilir ve karma\u015f\u0131k yap\u0131lar\u0131 daha iyi i\u015fleyebilirsiniz. \u0130\u00e7 i\u00e7e demetler, \u00e7ok boyutlu verileri temsil etmek, matrisler olu\u015fturmak ve di\u011fer yap\u0131sal verileri d\u00fczenlemek i\u00e7in yayg\u0131n olarak kullan\u0131l\u0131r.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da Demetlerin Fonksiyonlarda Kullan\u0131m\u0131<\/strong><\/p>\n\n\n\n<p>Python programlamada, demetler (tuples) s\u0131k\u00e7a kullan\u0131lan veri yap\u0131s\u0131d\u0131r ve bu demetlerin fonksiyonlarda kullan\u0131lmas\u0131 olduk\u00e7a yayg\u0131nd\u0131r. Demetler, i\u015flevlerin daha fazla veri d\u00f6nd\u00fcrmesine, verilerin grupland\u0131r\u0131lmas\u0131na ve daha okunakl\u0131 ve d\u00fczenli kod olu\u015fturulmas\u0131na yard\u0131mc\u0131 olur.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Demetlerin Fonksiyonlarda Kullan\u0131lmas\u0131<\/strong><\/p>\n\n\n\n<p>Fonksiyonlar, bir demet i\u00e7inde birden fazla de\u011fer d\u00f6nd\u00fcrebilir. Bu, i\u015flevin birden fazla sonucunu daha verimli bir \u015fekilde i\u015flemenizi sa\u011flar.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>def hesapla(a, b):\r\n    toplam = a + b\r\n    fark = a - b\r\n    carpim = a * b\r\n    bolum = a \/ b\r\n    \r\n    return (toplam, fark, carpim, bolum)\r\n\r\nsonuclar = hesapla(10, 5)\r\nprint(sonuclar)  # (15, 5, 50, 2.0)\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>hesapla<\/code> i\u015flevi, toplam, fark, \u00e7arp\u0131m ve b\u00f6l\u00fcm sonu\u00e7lar\u0131n\u0131 bir demet i\u00e7inde d\u00f6nd\u00fcr\u00fcyor.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>2. \u0130simlendirilmi\u015f De\u011ferler D\u00f6nd\u00fcrme<\/strong><\/p>\n\n\n\n<p>Demetler, d\u00f6nd\u00fcr\u00fclen de\u011ferlerin anlamlar\u0131n\u0131 daha iyi ifade etmek i\u00e7in kullan\u0131labilir.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>def dik_ucgen_hesapla(a, b):\r\n    hipotenus = (a ** 2 + b ** 2) ** 0.5\r\n    alan = (a * b) \/ 2\r\n    \r\n    return {'Hipotenus': hipotenus, 'Alan': alan}\r\n\r\nsonuclar = dik_ucgen_hesapla(3, 4)\r\nprint(sonuclar)  # {'Hipotenus': 5.0, 'Alan': 6.0}\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>dik_ucgen_hesapla<\/code> i\u015flevi, hipoten\u00fcs ve alan sonu\u00e7lar\u0131n\u0131 i\u00e7eren bir s\u00f6zl\u00fc\u011f\u00fc d\u00f6nd\u00fcr\u00fcyor, bu da sonu\u00e7lar\u0131n neyi temsil etti\u011fini a\u00e7\u0131klar.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>3. \u0130\u015flevlere De\u011fi\u015ftirilemez Arg\u00fcmanlar Ge\u00e7irme<\/strong><\/p>\n\n\n\n<p>Demetler de\u011fi\u015ftirilemez oldu\u011fu i\u00e7in, i\u015flevlere demetler ge\u00e7irerek verilerin yanl\u0131\u015fl\u0131kla de\u011fi\u015ftirilmesini \u00f6nleyebilirsiniz. \u00d6zellikle hassas verilerle \u00e7al\u0131\u015f\u0131rken bu \u00f6nemlidir.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>def verileri_goster(veri_demeti):\r\n    for veri in veri_demeti:\r\n        print(veri)\r\n\r\nveriler = ('veri1', 'veri2', 'veri3')\r\nverileri_goster(veriler)\r<\/code><\/pre>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\u00d6zet<\/strong><\/p>\n\n\n\n<p>Python&#8217;da demetler, fonksiyonlarda \u00e7oklu de\u011fer d\u00f6nd\u00fcrme, de\u011ferleri anlaml\u0131 bir \u015fekilde isimlendirme ve de\u011fi\u015ftirilemez (immutable) verilerin i\u015flevlere ge\u00e7irilmesi gibi \u00e7e\u015fitli kullan\u0131m senaryolar\u0131 i\u00e7in \u00e7ok kullan\u0131\u015fl\u0131d\u0131r. Demetler, verilerin d\u00fczenlenmesi ve i\u015flenmesi i\u00e7in \u00f6nemli bir ara\u00e7t\u0131r ve program\u0131n\u0131z\u0131n daha d\u00fczenli ve okunakl\u0131 olmas\u0131na yard\u0131mc\u0131 olabilirler. Demetlerin bu i\u015flevsel kullan\u0131mlar\u0131, Python&#8217;da daha etkili ve d\u00fczenli kod yazman\u0131za olanak tan\u0131r.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da Demetlerin Paketleme ve \u00c7\u00f6zme \u0130\u015flemleri<\/strong><\/p>\n\n\n\n<p>Python programlamada, demetler (tuples) veri yap\u0131lar\u0131d\u0131r ve bu demetlerin i\u00e7ine birden fazla \u00f6\u011fe eklemek ve bu \u00f6\u011feleri \u00e7\u0131karmak i\u00e7in paketleme (packing) ve \u00e7\u00f6zme (unpacking) i\u015flemlerini kullanabilirsiniz. Paketleme, bir veya daha fazla \u00f6\u011feyi bir demet i\u00e7inde gruplamak anlam\u0131na gelirken, \u00e7\u00f6zme, bir demetin i\u00e7indeki \u00f6\u011feleri ayr\u0131 de\u011fi\u015fkenlere \u00e7\u0131karmak anlam\u0131na gelir.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Paketleme (Packing) Nedir?<\/strong><\/p>\n\n\n\n<p>Paketleme, birden fazla \u00f6\u011feyi bir demet i\u00e7inde toplamak anlam\u0131na gelir. Bir demet olu\u015ftururken birden fazla \u00f6\u011feyi virg\u00fclle ay\u0131rarak bu i\u015flemi ger\u00e7ekle\u015ftirebilirsiniz.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = 'k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi'\r<\/code><\/pre>\n\n\n\n<p>Bu sat\u0131r, <code>renkler<\/code> ad\u0131nda bir demeti olu\u015fturur ve i\u00e7ine \u00fc\u00e7 farkl\u0131 renk ekler. Bu, paketleme i\u015flemidir.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\u00c7\u00f6zme (Unpacking) Nedir?<\/strong><\/p>\n\n\n\n<p>\u00c7\u00f6zme, bir demetin i\u00e7indeki \u00f6\u011feleri ayr\u0131 de\u011fi\u015fkenlere \u00e7\u0131karmak anlam\u0131na gelir. Bu i\u015flem, demet i\u00e7indeki \u00f6\u011feleri s\u0131rayla ayr\u0131\u015ft\u0131rarak yap\u0131l\u0131r.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>renkler = 'k\u0131rm\u0131z\u0131', 'ye\u015fil', 'mavi'\r\n\r\nrenk1, renk2, renk3 = renkler\r<\/code><\/pre>\n\n\n\n<p>Bu kod, <code>renkler<\/code> demetini \u00fc\u00e7 farkl\u0131 de\u011fi\u015fkene (<code>renk1<\/code>, <code>renk2<\/code>, <code>renk3<\/code>) \u00e7\u00f6zer. Her bir de\u011fi\u015fken, demetin i\u00e7indeki \u00f6\u011feyi temsil eder.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Paketleme ve \u00c7\u00f6zme \u0130\u015fleminin Kullan\u0131m\u0131<\/strong><\/p>\n\n\n\n<p>Paketleme ve \u00e7\u00f6zme i\u015flemleri, fonksiyonlarda birden fazla de\u011feri d\u00f6nd\u00fcrmek, de\u011fi\u015fkenler aras\u0131nda de\u011ferleri takas etmek ve karma\u015f\u0131k veri yap\u0131lar\u0131n\u0131 d\u00fczenlemek i\u00e7in kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Birden Fazla De\u011fer D\u00f6nd\u00fcrme<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>def hesapla(a, b):\r\n    toplam = a + b\r\n    fark = a - b\r\n    carpim = a * b\r\n    bolum = a \/ b\r\n    \r\n    return toplam, fark, carpim, bolum\r\n\r\nsonuclar = hesapla(10, 5)\r\nprint(sonuclar)  # (15, 5, 50, 2.0)\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>hesapla<\/code> i\u015flevi d\u00f6rt sonucu bir demet i\u00e7inde d\u00f6nd\u00fcr\u00fcyor ve bu sonu\u00e7lar\u0131 <code>sonuclar<\/code> adl\u0131 bir demette paketliyor.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>De\u011ferlerin Takas Edilmesi<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>x = 5\r\ny = 10\r\n\r\nx, y = y, x\r\n\r\nprint(\"x:\", x)  # 10\r\nprint(\"y:\", y)  # 5\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>x<\/code> ve <code>y<\/code> de\u011fi\u015fkenlerinin de\u011ferleri \u00e7\u00f6zme i\u015flemiyle takas ediliyor.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Sonu\u00e7<\/strong><\/p>\n\n\n\n<p>Python&#8217;da demetlerin paketleme ve \u00e7\u00f6zme i\u015flemleri, verileri gruplamak ve ayr\u0131\u015ft\u0131rmak i\u00e7in g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r. Bu i\u015flemler, fonksiyonlarda birden fazla de\u011fer d\u00f6nd\u00fcrmek, de\u011fi\u015fkenler aras\u0131nda de\u011ferleri takas etmek ve karma\u015f\u0131k veri yap\u0131lar\u0131n\u0131 daha d\u00fczenli bir \u015fekilde d\u00fczenlemek i\u00e7in kullan\u0131l\u0131r. Demetler, de\u011fi\u015fmez (immutable) oldu\u011fu i\u00e7in bu i\u015flemleri g\u00fcvenle kullanabilirsiniz ve bu da program\u0131n\u0131z\u0131n daha okunakl\u0131 ve d\u00fczenli olmas\u0131na yard\u0131mc\u0131 olur. Paketleme ve \u00e7\u00f6zme i\u015flemleri, Python programlamas\u0131nda s\u0131k\u00e7a kullan\u0131lan ve i\u015fleri kolayla\u015ft\u0131ran \u00f6nemli bir \u00f6zelliktir.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da *args ve **kwargs Kullanarak Demetleri \u0130\u015fleme<\/strong><\/p>\n\n\n\n<p>Python programlamada, <code>*args<\/code> ve <code>**kwargs<\/code> \u00f6zel arg\u00fcmanlar, i\u015flevlere farkl\u0131 say\u0131da arg\u00fcmanlar ve anahtar-de\u011fer \u00e7iftleri ge\u00e7irmenizi sa\u011flar. Bu \u00f6zellikler, demetlerle \u00e7al\u0131\u015f\u0131rken dinamik olarak de\u011fi\u015fen say\u0131da veriyi i\u015flemek i\u00e7in olduk\u00e7a kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>*args Nedir?<\/strong><\/p>\n\n\n\n<p><code>*args<\/code>, i\u015flevlere de\u011fi\u015fken say\u0131da pozisyonel arg\u00fcmanlar (demetler gibi) ge\u00e7irmenizi sa\u011flar. <code>*<\/code> ile i\u015faretlenen bir parametre ismi kullan\u0131larak tan\u0131mlan\u0131r.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>def toplam(*args):\r\n    sonuc = 0\r\n    for sayi in args:\r\n        sonuc += sayi\r\n    return sonuc\r\n\r\ntoplam1 = toplam(1, 2, 3)\r\ntoplam2 = toplam(4, 5, 6, 7)\r\n\r\nprint(toplam1)  # 6\r\nprint(toplam2)  # 22\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>toplam<\/code> i\u015flevi <code>*args<\/code> kullanarak de\u011fi\u015fken say\u0131da say\u0131y\u0131 topluyor.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>**kwargs Nedir?<\/strong><\/p>\n\n\n\n<p><code>**kwargs<\/code>, i\u015flevlere de\u011fi\u015fken say\u0131da anahtar-de\u011fer \u00e7iftleri (s\u00f6zl\u00fckler gibi) ge\u00e7irmenizi sa\u011flar. <code>**<\/code> ile i\u015faretlenen bir parametre ismi kullan\u0131larak tan\u0131mlan\u0131r.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>def yazdir(**kwargs):\r\n    for anahtar, deger in kwargs.items():\r\n        print(f\"{anahtar}: {deger}\")\r\n\r\nyazdir(isim=\"Ahmet\", soyisim=\"Y\u0131lmaz\", yas=30)\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>yazdir<\/code> i\u015flevi <code>**kwargs<\/code> kullanarak de\u011fi\u015fken say\u0131da anahtar-de\u011fer \u00e7iftini yazd\u0131r\u0131yor.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>*args ve **kwargs ile Demetleri \u0130\u015fleme<\/strong><\/p>\n\n\n\n<p><code>*args<\/code> ve <code>**kwargs<\/code> kullanarak demetleri i\u015flemek olduk\u00e7a basittir.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>def demetleri_isle(*args, **kwargs):\r\n    for demet in args:\r\n        print(\"Demet:\", demet)\r\n    \r\n    for anahtar, deger in kwargs.items():\r\n        print(f\"{anahtar}: {deger}\")\r\n\r\ndemet1 = (1, 2, 3)\r\ndemet2 = (4, 5, 6)\r\nkwargs = {\"isim\": \"Ahmet\", \"soyisim\": \"Y\u0131lmaz\"}\r\n\r\ndemetleri_isle(demet1, demet2, **kwargs)\r<\/code><\/pre>\n\n\n\n<p>Bu \u00f6rnekte, <code>demetleri_isle<\/code> i\u015flevi hem <code>*args<\/code> ile gelen demetleri hem de <code>**kwargs<\/code> ile gelen anahtar-de\u011fer \u00e7iftlerini i\u015fliyor.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\u00d6zet<\/strong><\/p>\n\n\n\n<p>Python&#8217;da <code>*args<\/code> ve <code>**kwargs<\/code> \u00f6zel arg\u00fcmanlar\u0131, demetler gibi de\u011fi\u015fken say\u0131da veriyi i\u015flemek i\u00e7in kullan\u0131\u015fl\u0131d\u0131r. <code>*args<\/code> pozisyonel arg\u00fcmanlar\u0131, <code>**kwargs<\/code> ise anahtar-de\u011fer \u00e7iftlerini i\u015flemek i\u00e7in kullan\u0131l\u0131r. Bu \u00f6zellikler, i\u015flevlerin daha esnek ve dinamik hale gelmesini sa\u011flar ve \u00f6zellikle demetlerle \u00e7al\u0131\u015f\u0131rken veriyi kolayca i\u015flemenize yard\u0131mc\u0131 olur. Demetleri ve s\u00f6zl\u00fckleri i\u015flerken bu \u00f6zellikler, kodunuzun daha okunakl\u0131 ve d\u00fczenli olmas\u0131na katk\u0131 sa\u011flar.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da Demetlerin Ger\u00e7ek D\u00fcnya Kullan\u0131m\u0131<\/strong><\/p>\n\n\n\n<p>Python programlamada, demetler (tuples) \u00e7ok y\u00f6nl\u00fc veri yap\u0131lar\u0131d\u0131r ve ger\u00e7ek d\u00fcnya uygulamalar\u0131nda bir\u00e7ok kullan\u0131m alan\u0131 vard\u0131r. Demetler, de\u011fi\u015ftirilemez (immutable) olduklar\u0131 i\u00e7in verilerin korunmas\u0131na ve grupland\u0131r\u0131lmas\u0131na yard\u0131mc\u0131 olurlar.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>1. Co\u011frafi Koordinatlar<\/strong><\/p>\n\n\n\n<p>Co\u011frafi uygulamalarda s\u0131k\u00e7a kullan\u0131lan bir senaryo, noktalar\u0131n co\u011frafi koordinatlar\u0131n\u0131 (enlem ve boylam) saklamakt\u0131r. Bu t\u00fcr veriler, demetlerle iyi bir \u015fekilde temsil edilebilir:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ankara_koordinat = (39.9334, 32.8597)\r\nistanbul_koordinat = (41.0082, 28.9784)\r\nizmir_koordinat = (38.419200, 27.128700)\r<\/code><\/pre>\n\n\n\n<p>Bu demetler, farkl\u0131 \u015fehirlerin co\u011frafi koordinatlar\u0131n\u0131 temsil eder.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>2. Kitap Bilgileri<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kitap1 = ('Python Programlama', 'Guido van Rossum', 1991)\r\nkitap2 = ('Veri Bilimi \u0130\u00e7in Python', 'Jake VanderPlas', 2016)\r\nkitap3 = ('Python ile Makine \u00d6\u011frenimi', 'Sebastian Raschka', 2015)\r<\/code><\/pre>\n\n\n\n<p>Bu demetler, farkl\u0131 kitaplar\u0131n bilgilerini saklar.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>3. Renk Kodlar\u0131<\/strong><\/p>\n\n\n\n<p>Bir grafik tasar\u0131m uygulamas\u0131 geli\u015ftirirken, renk kodlar\u0131n\u0131 temsil etmek i\u00e7in demetler kullanabilirsiniz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>siyah = (0, 0, 0)\r\nbeyaz = (255, 255, 255)\r\nkirmizi = (255, 0, 0)\r\nyesil = (0, 255, 0)\r<\/code><\/pre>\n\n\n\n<p>Bu demetler, farkl\u0131 renklerin RGB (K\u0131rm\u0131z\u0131, Ye\u015fil, Mavi) kodlar\u0131n\u0131 temsil eder.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>4. \u00dclke Bilgileri<\/strong><\/p>\n\n\n\n<p>Bir co\u011frafi uygulama geli\u015ftirirken, \u00fclke ad\u0131, ba\u015fkent ve n\u00fcfus gibi \u00fclke bilgilerini demetlerle saklayabilirsiniz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>turkiye = ('T\u00fcrkiye', 'Ankara', 84339067)\r\nalmanya = ('Almanya', 'Berlin', 83190556)\r\nfransa = ('Fransa', 'Paris', 67076000)\r<\/code><\/pre>\n\n\n\n<p>Bu demetler, farkl\u0131 \u00fclkelerin bilgilerini temsil eder.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>5. Dil \u00c7evirileri<\/strong><\/p>\n\n\n\n<p>\u00c7eviri uygulamalar\u0131nda, bir kelimenin farkl\u0131 dillerdeki \u00e7evirilerini demetlerle temsil edebilirsiniz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>merhaba = ('Merhaba', 'Hello', 'Bonjour', 'Hola', 'Ciao')\r\nevet = ('Evet', 'Yes', 'Oui', 'S\u00ed', 'S\u00ec')\r\nhayir = ('Hay\u0131r', 'No', 'Non', 'No', 'No')\r<\/code><\/pre>\n\n\n\n<p>Bu demetler, farkl\u0131 dillerdeki \u00e7evirileri grupland\u0131r\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Sonu\u00e7<\/strong><\/p>\n\n\n\n<p>Python&#8217;da demetler, ger\u00e7ek d\u00fcnya uygulamalar\u0131nda verileri d\u00fczenlemek ve grupland\u0131rmak i\u00e7in \u00e7ok y\u00f6nl\u00fc bir ara\u00e7t\u0131r. Co\u011frafi koordinatlar, kitap bilgileri, renk kodlar\u0131, \u00fclke bilgileri, dil \u00e7evirileri gibi bir\u00e7ok senaryoda demetler kullan\u0131labilir. Bu veri yap\u0131s\u0131, verilerin d\u00fczenli ve eri\u015filebilir olmas\u0131n\u0131 sa\u011flar ve kodun daha okunakl\u0131 olmas\u0131na yard\u0131mc\u0131 olur. Demetleri kullanarak verileri koruyabilir ve organize edebilirsiniz, bu da Python programlamas\u0131nda \u00f6nemli bir avantajd\u0131r.<\/p>\n\n\n\n<p class=\"has-large-font-size\"><strong>Python&#8217;da Demetler ve Listeler: Temel Farklar<\/strong><\/p>\n\n\n\n<p>Python programlamada, demetler (tuples) ve listeler (lists) iki farkl\u0131 veri yap\u0131s\u0131d\u0131r ve her birinin kendine \u00f6zg\u00fc kullan\u0131m alanlar\u0131 ve \u00f6zellikleri vard\u0131r.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>1. De\u011fi\u015ftirilebilirlik (Mutability)<\/strong><\/p>\n\n\n\n<p>En temel fark, demetlerin de\u011fi\u015ftirilemez (immutable) olmas\u0131 ve listelerin de\u011fi\u015ftirilebilir (mutable) olmas\u0131d\u0131r.<\/p>\n\n\n\n<p><strong>Demetler<\/strong>: Demetler olu\u015fturulduktan sonra i\u00e7erikleri de\u011fi\u015ftirilemez. Yani bir defa olu\u015fturulduktan sonra i\u00e7indeki \u00f6\u011feleri eklemek, \u00e7\u0131karmak veya de\u011fi\u015ftirmek m\u00fcmk\u00fcn de\u011fildir. Bu \u00f6zellik, verilerin g\u00fcvenli\u011fi ve tutarl\u0131l\u0131\u011f\u0131 sa\u011flar. \u00d6rne\u011fin:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = (1, 2, 3)\r\ndemet&#91;0] = 4  # Hata! Demetler de\u011fi\u015ftirilemez.\r<\/code><\/pre>\n\n\n\n<p><strong>Listeler<\/strong>: Listeler ise de\u011fi\u015ftirilebilirler. Yani i\u00e7erikleri olu\u015fturulduktan sonra de\u011fi\u015ftirilebilir. \u00d6\u011feleri eklemek, \u00e7\u0131karmak veya de\u011fi\u015ftirmek serbesttir. \u00d6rne\u011fin:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>liste = &#91;1, 2, 3]\r\nliste&#91;0] = 4  # Ge\u00e7erli! Listeler de\u011fi\u015ftirilebilir.\r<\/code><\/pre>\n\n\n\n<p class=\"has-medium-font-size\"><strong>2. Parantez T\u00fcr\u00fc<\/strong><\/p>\n\n\n\n<p>Bir di\u011fer fark, demetlerin ve listelerin tan\u0131mlanmas\u0131nda kullan\u0131lan parantez t\u00fcr\u00fcd\u00fcr.<\/p>\n\n\n\n<p><strong>Demetler<\/strong>: Demetler normal parantez <code>()<\/code> i\u00e7inde tan\u0131mlan\u0131r.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = (1, 2, 3)\r<\/code><\/pre>\n\n\n\n<p><strong>Listeler<\/strong>: Listeler k\u00f6\u015feli parantez <code>[]<\/code> i\u00e7inde tan\u0131mlan\u0131r.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>liste = &#91;1, 2, 3]\r<\/code><\/pre>\n\n\n\n<p>Bu parantez t\u00fcrleri, veri yap\u0131s\u0131n\u0131n t\u00fcr\u00fcn\u00fc belirtir ve Python i\u00e7in a\u00e7\u0131k bir g\u00f6sterim sa\u011flar.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>3. Performans<\/strong><\/p>\n\n\n\n<p>Performans a\u00e7\u0131s\u0131ndan, listeler genellikle demetlere g\u00f6re daha h\u0131zl\u0131d\u0131r \u00e7\u00fcnk\u00fc liste \u00f6\u011felerini de\u011fi\u015ftirmek daha h\u0131zl\u0131d\u0131r. Ancak bu performans fark\u0131 \u00e7ok b\u00fcy\u00fck olmayabilir ve uygulaman\u0131z\u0131n gereksinimlerine ba\u011fl\u0131 olarak de\u011fi\u015febilir.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>4. Kullan\u0131m Alanlar\u0131<\/strong><\/p>\n\n\n\n<p>Demetler ve listeler farkl\u0131 kullan\u0131m alanlar\u0131na sahiptir:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Demetler<\/strong>: De\u011fi\u015ftirilemez olduklar\u0131 i\u00e7in, genellikle sabit verileri veya de\u011fi\u015ftirilmemesi gereken verileri temsil etmek i\u00e7in kullan\u0131l\u0131r. \u00d6rne\u011fin, co\u011frafi koordinatlar, tarihler veya bir i\u015flemin sonu\u00e7lar\u0131 gibi verileri saklamak i\u00e7in demetler kullan\u0131labilir.<\/li>\n\n\n\n<li><strong>Listeler<\/strong>: De\u011fi\u015ftirilebilir olduklar\u0131 i\u00e7in, verilerin dinamik olarak g\u00fcncellendi\u011fi veya de\u011fi\u015ftirildi\u011fi durumlarda kullan\u0131l\u0131rlar. \u00d6rne\u011fin, bir liste \u00fczerinde \u00f6\u011feleri eklemek, \u00e7\u0131karmak veya s\u0131ralamak gibi i\u015flemler yapmak i\u00e7in listeler kullan\u0131l\u0131r.<\/li>\n<\/ul>\n\n\n\n<p class=\"has-medium-font-size\"><strong>5. \u0130terasyon<\/strong><\/p>\n\n\n\n<p>Hem demetler hem de listeler \u00fczerinde d\u00f6ng\u00fclerle (\u00f6rne\u011fin, <code>for<\/code> d\u00f6ng\u00fcs\u00fc) gezinebilirsiniz. \u0130terasyon i\u015flemi her iki veri yap\u0131s\u0131 i\u00e7in de ayn\u0131d\u0131r.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>demet = (1, 2, 3)\r\nfor eleman in demet:\r\n    print(eleman)\r\n\r\nliste = &#91;1, 2, 3]\r\nfor eleman in liste:\r\n    print(eleman)\r<\/code><\/pre>\n\n\n\n<p>Bu kod, hem bir demet hem de bir liste \u00fczerinde d\u00f6ng\u00fc olu\u015fturur ve her \u00f6\u011feyi ekrana yazar.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Sonu\u00e7<\/strong><\/p>\n\n\n\n<p>Python&#8217;da demetler ve listeler aras\u0131ndaki temel farklar de\u011fi\u015ftirilebilirlik, parantez t\u00fcr\u00fc, performans ve kullan\u0131m alanlar\u0131d\u0131r. Hangi veri yap\u0131s\u0131n\u0131n kullan\u0131laca\u011f\u0131, projenizin ihtiya\u00e7lar\u0131na ve gereksinimlerine ba\u011fl\u0131d\u0131r. De\u011fi\u015ftirilemez ve g\u00fcvenli bir veri yap\u0131s\u0131 gerekiyorsa demetler tercih edilirken, verilerin dinamik olarak g\u00fcncellenmesi gerekiyorsa listeler tercih edilir. \u0130yi bir Python programc\u0131s\u0131 olarak, her iki veri yap\u0131s\u0131n\u0131 da do\u011fru ba\u011flamda kullanmay\u0131 \u00f6\u011frenmelisiniz.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Python&#8217;da demetler, listeleri ile ilk ba\u015fta kar\u0131\u015ft\u0131r\u0131l\u0131r. Ancak bu ikisi aras\u0131nda \u00f6nemli farklar bulunmaktad\u0131r. Demetler konusunu \u00f6\u011frenmek isteyenler a\u015fa\u011f\u0131da yazm\u0131\u015f oldu\u011fumuz konu ba\u015fl\u0131klar\u0131n\u0131 \u00f6\u011frenmelidir. Python&#8217;da [&#8230;]<\/p>\n","protected":false},"author":3,"featured_media":461,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[59,8,60,9],"class_list":["post-460","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-python","tag-demetler","tag-python","tag-tuples","tag-yazilim"],"_links":{"self":[{"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/posts\/460","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/comments?post=460"}],"version-history":[{"count":5,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/posts\/460\/revisions"}],"predecessor-version":[{"id":470,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/posts\/460\/revisions\/470"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/media\/461"}],"wp:attachment":[{"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/media?parent=460"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/categories?post=460"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.facadium.com.tr\/blog\/wp-json\/wp\/v2\/tags?post=460"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}