{"id":38832,"date":"2026-02-08T17:40:42","date_gmt":"2026-02-08T14:40:42","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=38832"},"modified":"2026-02-08T17:40:42","modified_gmt":"2026-02-08T14:40:42","slug":"python-3te-kosullu-ifadeler-nasil-yazilir","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/","title":{"rendered":"Python 3&#8217;te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r?"},"content":{"rendered":"<p><body><\/p>\n<h2>Python 3&#8217;te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r?<\/h2>\n<h3>Giri\u015f: Ko\u015fullu \u0130fadelerin \u00d6nemi<\/h3>\n<p>Programlama d\u00fcnyas\u0131nda, bir uygulaman\u0131n ak\u0131\u015f\u0131n\u0131 kontrol etmek, belirli durumlara g\u00f6re farkl\u0131 eylemler ger\u00e7ekle\u015ftirmek temel bir gereksinimdir. \u0130\u015fte tam da bu noktada ko\u015fullu ifadeler devreye girer. Ko\u015fullu ifadeler, programlar\u0131m\u0131za &#8220;karar verme&#8221; yetene\u011fi kazand\u0131r\u0131r; yani, belirli bir ko\u015fulun do\u011fru (True) veya yanl\u0131\u015f (False) olmas\u0131na ba\u011fl\u0131 olarak farkl\u0131 kod bloklar\u0131n\u0131n \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131n\u0131 sa\u011flarlar. Python 3, okunabilirli\u011fi ve basitli\u011fi ile bilinen bir dil oldu\u011fundan, ko\u015fullu ifadeleri yazmak da olduk\u00e7a sezgiseldir. Bu makalede, Python 3&#8217;teki ko\u015fullu ifadelerin t\u00fcm y\u00f6nlerini, temel <code>if<\/code> ifadesinden karma\u015f\u0131k <code>if-elif-else<\/code> yap\u0131lar\u0131na, mant\u0131ksal operat\u00f6rlerden i\u00e7 i\u00e7e ko\u015fullara kadar detayl\u0131 bir \u015fekilde inceleyece\u011fiz. Ayr\u0131ca, yayg\u0131n hatalar\u0131, en iyi uygulamalar\u0131 ve pratik \u00f6rnekleri de ele alarak konuyu peki\u015ftirece\u011fiz.<\/p>\n<p>Bir program\u0131n, kullan\u0131c\u0131dan al\u0131nan bir girdiye g\u00f6re farkl\u0131 mesajlar g\u00f6stermesi, bir say\u0131n\u0131n pozitif mi, negatif mi yoksa s\u0131f\u0131r m\u0131 oldu\u011funu belirlemesi, bir kullan\u0131c\u0131n\u0131n ya\u015f\u0131n\u0131n belirli bir aral\u0131kta olup olmad\u0131\u011f\u0131n\u0131 kontrol etmesi gibi senaryolar, ko\u015fullu ifadelerin g\u00fcnl\u00fck programlama g\u00f6revlerindeki vazge\u00e7ilmezli\u011fini g\u00f6zler \u00f6n\u00fcne serer. Ko\u015fullu ifadeler olmadan, programlar\u0131m\u0131z sadece do\u011frusal bir ak\u0131\u015fta \u00e7al\u0131\u015f\u0131r ve bu da onlar\u0131n esnekli\u011fini ve kullan\u0131\u015fl\u0131l\u0131\u011f\u0131n\u0131 b\u00fcy\u00fck \u00f6l\u00e7\u00fcde k\u0131s\u0131tlar. Python&#8217;\u0131n temiz s\u00f6zdizimi (syntax) sayesinde, bu karar verme mekanizmalar\u0131n\u0131 kodumuza entegre etmek olduk\u00e7a kolayd\u0131r.<\/p>\n<h3><code>if<\/code> \u0130fadesi: Temel Ko\u015ful Belirleme<\/h3>\n<p><code>if<\/code> ifadesi, Python&#8217;daki en temel ko\u015fullu yap\u0131d\u0131r. Belirli bir ko\u015fulun do\u011fru olup olmad\u0131\u011f\u0131n\u0131 kontrol eder ve e\u011fer do\u011fruysa, o ko\u015ful blo\u011funun i\u00e7indeki kodu \u00e7al\u0131\u015ft\u0131r\u0131r.<\/p>\n<h4>S\u00f6zdizimi (Syntax)<\/h4>\n<p><code>if<\/code> ifadesinin genel s\u00f6zdizimi \u015fu \u015fekildedir:<\/p>\n<pre><code class=\"language-python\">if ko\u015ful:\n    # Ko\u015ful do\u011fruysa \u00e7al\u0131\u015facak kod blo\u011fu\n    # Bu sat\u0131rlar girintili olmal\u0131d\u0131r<\/code><\/pre>\n<p>Burada dikkat edilmesi gereken en \u00f6nemli nokta, <code>ko\u015ful<\/code> ifadesinden sonra gelen iki nokta \u00fcst \u00fcste (<code>:<\/code>) ve ard\u0131ndan gelen kod blo\u011funun girintili (indent) olmas\u0131d\u0131r. Python&#8217;da girintiler, kod bloklar\u0131n\u0131 tan\u0131mlamak i\u00e7in kullan\u0131l\u0131r ve bu, di\u011fer dillerdeki s\u00fcsl\u00fc parantez (curly braces) veya <code>end<\/code> anahtar kelimesi yerine ge\u00e7er. Genellikle 4 bo\u015fluk karakteri ile girinti yap\u0131l\u0131r.<\/p>\n<h4>Basit Bir <code>if<\/code> \u00d6rne\u011fi<\/h4>\n<p>Bir say\u0131n\u0131n pozitif olup olmad\u0131\u011f\u0131n\u0131 kontrol edelim:<\/p>\n<pre><code class=\"language-python\">sayi = 10\n\nif sayi > 0:\n    print(\"Say\u0131 pozitiftir.\")\n\nsayi = -5\n\nif sayi > 0:\n    print(\"Bu mesaj g\u00f6r\u00fcnmez.\") # Ko\u015ful yanl\u0131\u015f oldu\u011fu i\u00e7in bu sat\u0131r \u00e7al\u0131\u015fmaz<\/code><\/pre>\n<p>Yukar\u0131daki \u00f6rnekte, <code>sayi > 0<\/code> ko\u015fulu ilk durumda do\u011fru oldu\u011fu i\u00e7in &#8220;Say\u0131 pozitiftir.&#8221; mesaj\u0131 ekrana yazd\u0131r\u0131l\u0131r. \u0130kinci durumda ise <code>sayi<\/code> de\u011feri -5 oldu\u011fu i\u00e7in <code>sayi > 0<\/code> ko\u015fulu yanl\u0131\u015f olur ve <code>print<\/code> ifadesi \u00e7al\u0131\u015ft\u0131r\u0131lmaz.<\/p>\n<h4>Do\u011fruluk De\u011feri (Truthiness) Kavram\u0131<\/h4>\n<p>Python&#8217;da, ko\u015fullu ifadelerde sadece <code>True<\/code> veya <code>False<\/code> de\u011ferlerini de\u011fil, ayn\u0131 zamanda &#8220;do\u011fruluk de\u011feri&#8221; olan herhangi bir nesneyi de kullanabiliriz. Python, baz\u0131 nesneleri do\u011fal olarak <code>True<\/code> veya <code>False<\/code> olarak de\u011ferlendirir:<\/p>\n<p>*   <strong><code>False<\/code> olarak de\u011ferlendirilenler:<\/strong><br \/>\n    *   <code>None<\/code><br \/>\n    *   <code>False<\/code> (boolean de\u011feri)<br \/>\n    *   Say\u0131sal s\u0131f\u0131rlar: <code>0<\/code>, <code>0.0<\/code>, <code>0j<\/code><br \/>\n    *   Bo\u015f diziler: <code>''<\/code>, <code>\"\"<\/code><br \/>\n    *   Bo\u015f listeler: <code>[]<\/code><br \/>\n    *   Bo\u015f demetler (tuple): <code>()<\/code><br \/>\n    *   Bo\u015f k\u00fcmeler (set): <code>{}<\/code><br \/>\n    *   Bo\u015f s\u00f6zl\u00fckler (dictionary): <code>{}<\/code><br \/>\n*   <strong><code>True<\/code> olarak de\u011ferlendirilenler:<\/strong> Yukar\u0131daki listede olmayan di\u011fer t\u00fcm nesneler (bo\u015f olmayan diziler, say\u0131lar, listeler vb.) <code>True<\/code> olarak de\u011ferlendirilir.<\/p>\n<p>\u00d6rnek:<\/p>\n<pre><code class=\"language-python\">liste = [1, 2, 3]\n\nif liste: # Liste bo\u015f olmad\u0131\u011f\u0131 i\u00e7in True olarak de\u011ferlendirilir\n    print(\"Liste bo\u015f de\u011fil.\")\n\nliste_bos = []\n\nif liste_bos: # Liste bo\u015f oldu\u011fu i\u00e7in False olarak de\u011ferlendirilir\n    print(\"Bu mesaj g\u00f6r\u00fcnmez.\")\n\nmetin = \"Merhaba\"\n\nif metin:\n    print(\"Metin bo\u015f de\u011fil.\")\n\nsayi_sifir = 0\n\nif sayi_sifir: # 0, False olarak de\u011ferlendirilir\n    print(\"Bu da g\u00f6r\u00fcnmez.\")<\/code><\/pre>\n<p>Bu \u00f6zellik, kodumuzu daha k\u0131sa ve okunabilir hale getirmemize yard\u0131mc\u0131 olabilir, \u00f6zellikle bir koleksiyonun bo\u015f olup olmad\u0131\u011f\u0131n\u0131 kontrol ederken.<\/p>\n<h3><code>else<\/code> \u0130fadesi: Ko\u015ful Sa\u011flanmad\u0131\u011f\u0131nda<\/h3>\n<p><code>if<\/code> ifadesi sadece ko\u015ful do\u011fru oldu\u011funda bir i\u015flem yapar. Peki ya ko\u015ful yanl\u0131\u015f oldu\u011funda ba\u015fka bir i\u015flem yapmak istersek? \u0130\u015fte bu noktada <code>else<\/code> ifadesi devreye girer. <code>else<\/code> blo\u011fu, <code>if<\/code> ko\u015fulunun yanl\u0131\u015f olmas\u0131 durumunda \u00e7al\u0131\u015ft\u0131r\u0131lacak kodu i\u00e7erir.<\/p>\n<h4>S\u00f6zdizimi<\/h4>\n<p><code>else<\/code> ifadesi her zaman bir <code>if<\/code> ifadesiyle birlikte kullan\u0131l\u0131r:<\/p>\n<pre><code class=\"language-python\">if ko\u015ful:\n    # Ko\u015ful do\u011fruysa \u00e7al\u0131\u015facak kod blo\u011fu\nelse:\n    # Ko\u015ful yanl\u0131\u015fsa \u00e7al\u0131\u015facak kod blo\u011fu<\/code><\/pre>\n<h4>\u00d6rnek: Tek Bir Alternatif Durum<\/h4>\n<p>Bir say\u0131n\u0131n tek mi \u00e7ift mi oldu\u011funu kontrol edelim:<\/p>\n<pre><code class=\"language-python\">sayi = 7\n\nif sayi % 2 == 0:\n    print(\"Say\u0131 \u00e7ifttir.\")\nelse:\n    print(\"Say\u0131 tektir.\")\n\nsayi = 12\n\nif sayi % 2 == 0:\n    print(\"Say\u0131 \u00e7ifttir.\")\nelse:\n    print(\"Say\u0131 tektir.\")<\/code><\/pre>\n<p>Bu \u00f6rnekte, <code>sayi % 2 == 0<\/code> ko\u015fulu <code>sayi<\/code> 7 iken yanl\u0131\u015f oldu\u011fu i\u00e7in <code>else<\/code> blo\u011fu \u00e7al\u0131\u015f\u0131r ve &#8220;Say\u0131 tektir.&#8221; mesaj\u0131 yazd\u0131r\u0131l\u0131r. <code>sayi<\/code> 12 iken ko\u015ful do\u011fru oldu\u011fu i\u00e7in <code>if<\/code> blo\u011fu \u00e7al\u0131\u015f\u0131r ve &#8220;Say\u0131 \u00e7ifttir.&#8221; mesaj\u0131 yazd\u0131r\u0131l\u0131r.<\/p>\n<h3><code>elif<\/code> \u0130fadesi: \u00c7oklu Ko\u015fullar\u0131 Y\u00f6netme<\/h3>\n<p>Bazen ikiden fazla olas\u0131 durumla kar\u015f\u0131la\u015f\u0131r\u0131z. \u00d6rne\u011fin, bir \u00f6\u011frencinin notuna g\u00f6re &#8220;A&#8221;, &#8220;B&#8221;, &#8220;C&#8221; gibi farkl\u0131 harf notlar\u0131 vermek isteyebiliriz. Bu t\u00fcr durumlarda <code>if<\/code> ve <code>else<\/code> yeterli olmaz. Python, bu senaryo i\u00e7in <code>elif<\/code> (else if&#8217;in k\u0131saltmas\u0131) ifadesini sunar. <code>elif<\/code>, birden fazla ko\u015fulu ard\u0131\u015f\u0131k olarak kontrol etmemizi sa\u011flar.<\/p>\n<h4>S\u00f6zdizimi<\/h4>\n<p><code>if-elif-else<\/code> zinciri \u015fu \u015fekildedir:<\/p>\n<pre><code class=\"language-python\">if ilk_ko\u015ful:\n    # \u0130lk ko\u015ful do\u011fruysa \u00e7al\u0131\u015facak kod\nelif ikinci_ko\u015ful:\n    # \u0130lk ko\u015ful yanl\u0131\u015f, ikinci ko\u015ful do\u011fruysa \u00e7al\u0131\u015facak kod\nelif ucuncu_ko\u015ful:\n    # \u0130lk ve ikinci yanl\u0131\u015f, \u00fc\u00e7\u00fcnc\u00fc ko\u015ful do\u011fruysa \u00e7al\u0131\u015facak kod\nelse:\n    # T\u00fcm ko\u015fullar yanl\u0131\u015fsa \u00e7al\u0131\u015facak kod (iste\u011fe ba\u011fl\u0131)<\/code><\/pre>\n<p><strong>\u00d6nemli:<\/strong> <code>elif<\/code> ve <code>else<\/code> bloklar\u0131 iste\u011fe ba\u011fl\u0131d\u0131r, ancak <code>elif<\/code> her zaman bir <code>if<\/code> veya ba\u015fka bir <code>elif<\/code>&#8216;i takip etmelidir. <code>else<\/code> ise zincirin en sonunda yer al\u0131r ve t\u00fcm \u00f6nceki <code>if<\/code> ve <code>elif<\/code> ko\u015fullar\u0131n\u0131n yanl\u0131\u015f oldu\u011fu durumda \u00e7al\u0131\u015f\u0131r.<\/p>\n<h4>S\u0131ralaman\u0131n \u00d6nemi<\/h4>\n<p><code>if-elif-else<\/code> yap\u0131s\u0131nda ko\u015fullar\u0131n s\u0131ras\u0131 \u00e7ok \u00f6nemlidir. Python, ko\u015fullar\u0131 yukar\u0131dan a\u015fa\u011f\u0131ya do\u011fru s\u0131rayla kontrol eder ve do\u011fru buldu\u011fu ilk blo\u011fu \u00e7al\u0131\u015ft\u0131rd\u0131ktan sonra t\u00fcm zinciri atlar.<\/p>\n<h4>\u00d6rnek: Notland\u0131rma Sistemi<\/h4>\n<p>Bir \u00f6\u011frencinin ald\u0131\u011f\u0131 puana g\u00f6re harf notu belirleyelim:<\/p>\n<pre><code class=\"language-python\">puan = 85\n\nif puan >= 90:\n    print(\"Harf Notu: A\")\nelif puan >= 80:\n    print(\"Harf Notu: B\")\nelif puan >= 70:\n    print(\"Harf Notu: C\")\nelif puan >= 60:\n    print(\"Harf Notu: D\")\nelse:\n    print(\"Harf Notu: F\")\n\npuan = 65\n\nif puan >= 90:\n    print(\"Harf Notu: A\")\nelif puan >= 80:\n    print(\"Harf Notu: B\")\nelif puan >= 70:\n    print(\"Harf Notu: C\")\nelif puan >= 60:\n    print(\"Harf Notu: D\")\nelse:\n    print(\"Harf Notu: F\")<\/code><\/pre>\n<p>\u0130lk durumda, <code>puan<\/code> 85 oldu\u011fu i\u00e7in ilk ko\u015ful (<code>puan >= 90<\/code>) yanl\u0131\u015f olur. \u0130kinci ko\u015ful (<code>puan >= 80<\/code>) do\u011fru oldu\u011fu i\u00e7in &#8220;Harf Notu: B&#8221; yazd\u0131r\u0131l\u0131r ve di\u011fer <code>elif<\/code> ve <code>else<\/code> bloklar\u0131 atlan\u0131r. \u0130kinci durumda, <code>puan<\/code> 65 oldu\u011fu i\u00e7in ilk \u00fc\u00e7 ko\u015ful yanl\u0131\u015f olur, d\u00f6rd\u00fcnc\u00fc ko\u015ful (<code>puan >= 60<\/code>) do\u011fru oldu\u011fu i\u00e7in &#8220;Harf Notu: D&#8221; yazd\u0131r\u0131l\u0131r.<\/p>\n<h3>Kar\u015f\u0131la\u015ft\u0131rma Operat\u00f6rleri<\/h3>\n<p>Ko\u015fullu ifadelerin temelini, iki de\u011feri birbiriyle kar\u015f\u0131la\u015ft\u0131ran kar\u015f\u0131la\u015ft\u0131rma operat\u00f6rleri olu\u015fturur. Bu operat\u00f6rler bir boolean de\u011feri (<code>True<\/code> veya <code>False<\/code>) d\u00f6nd\u00fcr\u00fcr.<\/p>\n<p>*   <code>==<\/code> (E\u015fittir): \u0130ki de\u011fer birbirine e\u015fitse <code>True<\/code> d\u00f6ner.<\/p>\n<pre><code class=\"language-python\">print(5 == 5)  # True\n    print(5 == 10) # False\n    print(\"elma\" == \"elma\") # True<\/code><\/pre>\n<p>*   <code>!=<\/code> (E\u015fit De\u011fildir): \u0130ki de\u011fer birbirine e\u015fit de\u011filse <code>True<\/code> d\u00f6ner.<\/p>\n<pre><code class=\"language-python\">print(5 != 10) # True\n    print(5 != 5)  # False<\/code><\/pre>\n<p>*   <code><<\/code> (K\u00fc\u00e7\u00fckt\u00fcr): Sol taraftaki de\u011fer sa\u011f taraftakinden k\u00fc\u00e7\u00fckse <code>True<\/code> d\u00f6ner.<\/p>\n<pre><code class=\"language-python\">print(5 < 10) # True\n    print(10 < 5) # False<\/code><\/pre>\n<p>*   <code>><\/code> (B\u00fcy\u00fckt\u00fcr): Sol taraftaki de\u011fer sa\u011f taraftakinden b\u00fcy\u00fckse <code>True<\/code> d\u00f6ner.<\/p>\n<pre><code class=\"language-python\">print(10 > 5) # True\n    print(5 > 10) # False<\/code><\/pre>\n<p>*   <code><=<\/code> (K\u00fc\u00e7\u00fck E\u015fittir): Sol taraftaki de\u011fer sa\u011f taraftakinden k\u00fc\u00e7\u00fck veya e\u015fitse <code>True<\/code> d\u00f6ner.<\/p>\n<pre><code class=\"language-python\">print(5 <= 10) # True\n    print(10 <= 10) # True\n    print(15 <= 10) # False<\/code><\/pre>\n<p>*   <code>>=<\/code> (B\u00fcy\u00fck E\u015fittir): Sol taraftaki de\u011fer sa\u011f taraftakinden b\u00fcy\u00fck veya e\u015fitse <code>True<\/code> d\u00f6ner.<\/p>\n<pre><code class=\"language-python\">print(10 >= 5) # True\n    print(10 >= 10) # True\n    print(5 >= 10) # False<\/code><\/pre>\n<p>Bu operat\u00f6rler, say\u0131lar, dizeler (stringler), listeler ve di\u011fer veri tipleri aras\u0131nda kar\u015f\u0131la\u015ft\u0131rmalar yapmak i\u00e7in kullan\u0131labilir. Dizeler alfabetik s\u0131raya g\u00f6re, listeler ise eleman eleman kar\u015f\u0131la\u015ft\u0131r\u0131l\u0131r.<\/p>\n<h3>Mant\u0131ksal Operat\u00f6rler: Ko\u015fullar\u0131 Birle\u015ftirme<\/h3>\n<p>Bazen tek bir ko\u015ful yerine birden fazla ko\u015fulun ayn\u0131 anda veya alternatif olarak do\u011fru olmas\u0131n\u0131 isteyebiliriz. Python, bu t\u00fcr senaryolar i\u00e7in <code>and<\/code>, <code>or<\/code> ve <code>not<\/code> olmak \u00fczere \u00fc\u00e7 mant\u0131ksal operat\u00f6r sunar.<\/p>\n<h4><code>and<\/code> Operat\u00f6r\u00fc<\/h4>\n<p><code>and<\/code> operat\u00f6r\u00fc, iki veya daha fazla ko\u015fulun <strong>hepsinin<\/strong> do\u011fru olmas\u0131n\u0131 gerektirir. E\u011fer t\u00fcm ko\u015fullar do\u011fruysa <code>True<\/code> d\u00f6ner, aksi takdirde <code>False<\/code> d\u00f6ner.<\/p>\n<pre><code class=\"language-python\">yas = 25\nehliyet_var_mi = True\n\nif yas >= 18 and ehliyet_var_mi:\n    print(\"Araba kullanabilir.\")\nelse:\n    print(\"Araba kullanamaz.\")\n\nyas = 16\nif yas >= 18 and ehliyet_var_mi: # \u0130lk ko\u015ful yanl\u0131\u015f oldu\u011fu i\u00e7in t\u00fcm ifade False olur\n    print(\"Araba kullanabilir.\")\nelse:\n    print(\"Araba kullanamaz.\")<\/code><\/pre>\n<h4><code>or<\/code> Operat\u00f6r\u00fc<\/h4>\n<p><code>or<\/code> operat\u00f6r\u00fc, iki veya daha fazla ko\u015fuldan <strong>herhangi birinin<\/strong> do\u011fru olmas\u0131 durumunda <code>True<\/code> d\u00f6ner. T\u00fcm ko\u015fullar yanl\u0131\u015fsa <code>False<\/code> d\u00f6ner.<\/p>\n<pre><code class=\"language-python\">hafta_ici = True\ntatil_gunu = False\n\nif hafta_ici or tatil_gunu:\n    print(\"Bug\u00fcn \u00e7al\u0131\u015f\u0131labilir.\")\nelse:\n    print(\"Bug\u00fcn dinlenilebilir.\")\n\nhafta_ici = False\ntatil_gunu = False\n\nif hafta_ici or tatil_gunu:\n    print(\"Bug\u00fcn \u00e7al\u0131\u015f\u0131labilir.\")\nelse:\n    print(\"Bug\u00fcn dinlenilebilir.\") # Her iki ko\u015ful da yanl\u0131\u015f oldu\u011fu i\u00e7in else \u00e7al\u0131\u015f\u0131r<\/code><\/pre>\n<h4><code>not<\/code> Operat\u00f6r\u00fc<\/h4>\n<p><code>not<\/code> operat\u00f6r\u00fc, bir ko\u015fulun mant\u0131ksal tersini al\u0131r. E\u011fer ko\u015ful <code>True<\/code> ise <code>False<\/code> yapar, <code>False<\/code> ise <code>True<\/code> yapar.<\/p>\n<pre><code class=\"language-python\">hava_yagmurlu = False\n\nif not hava_yagmurlu:\n    print(\"D\u0131\u015far\u0131da piknik yapabiliriz.\")\nelse:\n    print(\"\u015eemsiyelerimizi alal\u0131m.\")\n\nhava_yagmurlu = True\n\nif not hava_yagmurlu:\n    print(\"D\u0131\u015far\u0131da piknik yapabiliriz.\")\nelse:\n    print(\"\u015eemsiyelerimizi alal\u0131m.\") # not True = False oldu\u011fu i\u00e7in else \u00e7al\u0131\u015f\u0131r<\/code><\/pre>\n<h4>\u00d6ncelik S\u0131ralamas\u0131<\/h4>\n<p>Mant\u0131ksal operat\u00f6rlerin bir \u00f6ncelik s\u0131ras\u0131 vard\u0131r: <code>not<\/code> > <code>and<\/code> > <code>or<\/code>. Bu, <code>not<\/code> operat\u00f6r\u00fcn\u00fcn \u00f6nce de\u011ferlendirildi\u011fi, ard\u0131ndan <code>and<\/code> ve son olarak <code>or<\/code> operat\u00f6r\u00fcn\u00fcn de\u011ferlendirildi\u011fi anlam\u0131na gelir. Karma\u015f\u0131k ko\u015fullarda netli\u011fi art\u0131rmak i\u00e7in parantez <code>()<\/code> kullanmak iyi bir uygulamad\u0131r.<\/p>\n<pre><code class=\"language-python\">a = True\nb = False\nc = True\n\n<h2>not b and c -> (not False) and True -> True and True -> True<\/h2>\nif not b and c:\n    print(\"Ko\u015ful 1 do\u011fru.\")\n\n<h2>a or b and c -> a or (b and c) -> True or (False and True) -> True or False -> True<\/h2>\nif a or b and c:\n    print(\"Ko\u015ful 2 do\u011fru.\")\n\n<h2>(a or b) and c -> (True or False) and True -> True and True -> True<\/h2>\nif (a or b) and c:\n    print(\"Ko\u015ful 3 do\u011fru.\")<\/code><\/pre>\n<h3>\u0130\u00e7 \u0130\u00e7e (Nested) Ko\u015fullu \u0130fadeler<\/h3>\n<p>Bazen bir ko\u015fulun do\u011fru olmas\u0131 durumunda, ba\u015fka bir ko\u015fulun daha kontrol edilmesi gerekebilir. Bu duruma i\u00e7 i\u00e7e ko\u015fullu ifadeler denir. Bir <code>if<\/code> (veya <code>elif<\/code>, <code>else<\/code>) blo\u011funun i\u00e7ine ba\u015fka bir <code>if-elif-else<\/code> yap\u0131s\u0131 yerle\u015ftirilebilir.<\/p>\n<h4>Girinti Seviyelerinin \u00d6nemi<\/h4>\n<p>\u0130\u00e7 i\u00e7e ko\u015fullu ifadelerde girintiler kritik \u00f6neme sahiptir. Her yeni i\u00e7 i\u00e7e seviye, ek bir girinti ile ba\u015flamal\u0131d\u0131r.<\/p>\n<h4>\u00d6rnek<\/h4>\n<p>Bir kullan\u0131c\u0131n\u0131n ya\u015f\u0131n\u0131 ve ehliyet durumunu kontrol edelim:<\/p>\n<pre><code class=\"language-python\">kullanici_yasi = 20\nehliyet_sahibi_mi = True\nalkol_almisti = False\n\nif kullanici_yasi >= 18:\n    print(\"Ya\u015f uygun.\")\n    if ehliyet_sahibi_mi:\n        print(\"Ehliyet sahibi.\")\n        if not alkol_almisti:\n            print(\"Araba kullanabilir.\")\n        else:\n            print(\"Alkol ald\u0131\u011f\u0131 i\u00e7in araba kullanamaz!\")\n    else:\n        print(\"Ehliyeti olmad\u0131\u011f\u0131 i\u00e7in araba kullanamaz.\")\nelse:\n    print(\"Ya\u015f\u0131 uygun de\u011fil, araba kullanamaz.\")<\/code><\/pre>\n<p>Bu \u00f6rnekte, \u00f6nce ya\u015f kontrol edilir. Ya\u015f uygunsa, ehliyet kontrol\u00fc yap\u0131l\u0131r. Ehliyet de varsa, alkol al\u0131p almad\u0131\u011f\u0131 kontrol edilir. Her ad\u0131m, bir \u00f6nceki ko\u015fulun do\u011fru olmas\u0131 durumunda ger\u00e7ekle\u015fir.<\/p>\n<h4>Okunabilirlik ve Karma\u015f\u0131kl\u0131k Y\u00f6netimi<\/h4>\n<p>\u0130\u00e7 i\u00e7e ko\u015fullu ifadeler g\u00fc\u00e7l\u00fcd\u00fcr ancak a\u015f\u0131r\u0131ya ka\u00e7\u0131ld\u0131\u011f\u0131nda kodun okunabilirli\u011fini ve anla\u015f\u0131l\u0131rl\u0131\u011f\u0131n\u0131 olumsuz etkileyebilir. \u00c7ok fazla i\u00e7 i\u00e7e seviye (\"callback hell\" veya \"pyramid of doom\" olarak da bilinir) kodun bak\u0131m\u0131n\u0131 zorla\u015ft\u0131r\u0131r. Bu t\u00fcr durumlarda, mant\u0131ksal operat\u00f6rleri kullanarak ko\u015fullar\u0131 birle\u015ftirmek veya fonksiyonlara ay\u0131rmak daha iyi bir yakla\u015f\u0131m olabilir.<\/p>\n<p>\u00d6rne\u011fin, yukar\u0131daki \u00f6rne\u011fi mant\u0131ksal operat\u00f6rlerle daha d\u00fcz bir yap\u0131ya getirebiliriz:<\/p>\n<pre><code class=\"language-python\">kullanici_yasi = 20\nehliyet_sahibi_mi = True\nalkol_almisti = False\n\nif kullanici_yasi >= 18 and ehliyet_sahibi_mi and not alkol_almisti:\n    print(\"Araba kullanabilir.\")\nelif kullanici_yasi >= 18 and ehliyet_sahibi_mi and alkol_almisti:\n    print(\"Alkol ald\u0131\u011f\u0131 i\u00e7in araba kullanamaz!\")\nelif kullanici_yasi >= 18 and not ehliyet_sahibi_mi:\n    print(\"Ehliyeti olmad\u0131\u011f\u0131 i\u00e7in araba kullanamaz.\")\nelse:\n    print(\"Ya\u015f\u0131 uygun de\u011fil, araba kullanamaz.\")<\/code><\/pre>\n<p>Bu ikinci versiyon, baz\u0131 durumlarda daha okunabilir olabilir, ancak her iki yakla\u015f\u0131m\u0131n da kendine g\u00f6re avantajlar\u0131 ve dezavantajlar\u0131 vard\u0131r. Se\u00e7im, genellikle ko\u015fullar\u0131n karma\u015f\u0131kl\u0131\u011f\u0131na ve tercih edilen kod stiline ba\u011fl\u0131d\u0131r.<\/p>\n<h3>Tek Sat\u0131rda <code>if-else<\/code> (Ternary Operator)<\/h3>\n<p>Python, basit <code>if-else<\/code> durumlar\u0131 i\u00e7in daha k\u0131sa bir s\u00f6zdizimi sunar. Bu, di\u011fer dillerdeki \u00fc\u00e7l\u00fc operat\u00f6re (ternary operator) benzer ve tek bir sat\u0131rda bir ko\u015fula ba\u011fl\u0131 olarak bir de\u011fer ataman\u0131z\u0131 veya bir ifade d\u00f6nd\u00fcrmenizi sa\u011flar.<\/p>\n<h4>S\u00f6zdizimi<\/h4>\n<pre><code class=\"language-python\">de\u011fer_e\u011fer_do\u011fruysa if ko\u015ful else de\u011fer_e\u011fer_yanl\u0131\u015fsa<\/code><\/pre>\n<h4>\u00d6rnek<\/h4>\n<p>Bir say\u0131n\u0131n pozitif mi negatif mi oldu\u011funu belirleyip bir de\u011fi\u015fkene atayal\u0131m:<\/p>\n<pre><code class=\"language-python\">sayi = 10\ndurum = \"Pozitif\" if sayi > 0 else \"Negatif veya S\u0131f\u0131r\"\nprint(durum) # \u00c7\u0131kt\u0131: Pozitif\n\nsayi = -3\ndurum = \"Pozitif\" if sayi > 0 else \"Negatif veya S\u0131f\u0131r\"\nprint(durum) # \u00c7\u0131kt\u0131: Negatif veya S\u0131f\u0131r\n\n<h2>Do\u011frudan print i\u00e7inde de kullan\u0131labilir<\/h2>\nsayi = 0\nprint(\"\u00c7ift\" if sayi % 2 == 0 else \"Tek\") # \u00c7\u0131kt\u0131: \u00c7ift<\/code><\/pre>\n<p>Bu yap\u0131, \u00f6zellikle k\u0131sa ve \u00f6z atamalar veya de\u011fer d\u00f6nd\u00fcrmeler i\u00e7in \u00e7ok kullan\u0131\u015fl\u0131d\u0131r. Ancak, karma\u015f\u0131k ko\u015fullar veya birden fazla i\u015flem gerektiren durumlar i\u00e7in klasik <code>if-else<\/code> blo\u011fu daha okunabilir olabilir. A\u015f\u0131r\u0131 kullan\u0131mdan ka\u00e7\u0131nmak, kodun anla\u015f\u0131l\u0131rl\u0131\u011f\u0131n\u0131 korumak i\u00e7in \u00f6nemlidir.<\/p>\n<h3><code>pass<\/code> \u0130fadesi: Bo\u015f Bloklar \u0130\u00e7in<\/h3>\n<p>Bazen bir <code>if<\/code>, <code>elif<\/code> veya <code>else<\/code> blo\u011funun i\u00e7ine hen\u00fcz yaz\u0131lmam\u0131\u015f veya bilerek bo\u015f b\u0131rak\u0131lm\u0131\u015f bir kod blo\u011fu yerle\u015ftirmek isteyebiliriz. Python'da bo\u015f bir kod blo\u011fu b\u0131rakmak s\u00f6zdizimi hatas\u0131na yol a\u00e7ar. Bu durumu \u00f6nlemek i\u00e7in <code>pass<\/code> ifadesini kullan\u0131r\u0131z. <code>pass<\/code>, hi\u00e7bir \u015fey yapmayan bir yer tutucudur.<\/p>\n<h4>S\u00f6zdizimi ve Kullan\u0131m Senaryolar\u0131<\/h4>\n<pre><code class=\"language-python\">if ko\u015ful:\n    pass # Bu ko\u015ful do\u011fruysa \u015fimdilik hi\u00e7bir \u015fey yapma\nelse:\n    print(\"Ko\u015ful yanl\u0131\u015f.\")<\/code><\/pre>\n<p>\u00d6rnek:<\/p>\n<pre><code class=\"language-python\">kullanici_girisi = \"exit\"\n\nif kullanici_girisi == \"exit\":\n    pass # \u00c7\u0131k\u0131\u015f mant\u0131\u011f\u0131 daha sonra eklenecek\nelif kullanici_girisi == \"help\":\n    print(\"Yard\u0131m men\u00fcs\u00fc g\u00f6steriliyor.\")\nelse:\n    print(\"Ge\u00e7ersiz komut.\")\n\n<h2>Fonksiyon tan\u0131mlarken de kullan\u0131labilir<\/h2>\ndef gelecekteki_fonksiyon():\n    pass<\/code><\/pre>\n<p><code>pass<\/code> ifadesi, \u00f6zellikle kodun taslak a\u015famas\u0131nda veya bir s\u0131n\u0131f\/fonksiyon yap\u0131s\u0131n\u0131 olu\u015ftururken kullan\u0131\u015fl\u0131d\u0131r, b\u00f6ylece s\u00f6zdizimi hatalar\u0131 almadan program\u0131n genel yap\u0131s\u0131n\u0131 olu\u015fturabilirsiniz.<\/p>\n<h3>Ko\u015fullu \u0130fadelerde Yayg\u0131n Hatalar ve En \u0130yi Uygulamalar<\/h3>\n<p>Ko\u015fullu ifadeler basit g\u00f6r\u00fcnse de, baz\u0131 yayg\u0131n hatalar program\u0131n beklenmedik \u015fekillerde davranmas\u0131na neden olabilir. \u0130\u015fte dikkat edilmesi gerekenler ve en iyi uygulamalar:<\/p>\n<h4>Girinti Hatalar\u0131 (<code>IndentationError<\/code>)<\/h4>\n<p>Python'da girintiler s\u00f6zdiziminin bir par\u00e7as\u0131d\u0131r. Yanl\u0131\u015f girinti, <code>IndentationError<\/code> hatas\u0131na yol a\u00e7ar. Her zaman ayn\u0131 say\u0131da bo\u015fluk (genellikle 4) kullanmaya \u00f6zen g\u00f6sterin.<\/p>\n<pre><code class=\"language-python\"># Hatal\u0131\n<h2>if sayi > 0:<\/h2>\n<h2>print(\"Pozitif\") # IndentationError: expected an indented block<\/h2>\n\n<h2>Do\u011fru<\/h2>\nsayi = 5\nif sayi > 0:\n    print(\"Pozitif\")<\/code><\/pre>\n<h4><code>=<\/code> ile <code>==<\/code> Kar\u0131\u015ft\u0131rma<\/h4>\n<p>Tek e\u015fittir (<code>=<\/code>) atama operat\u00f6r\u00fcd\u00fcr, \u00e7ift e\u015fittir (<code>==<\/code>) ise kar\u015f\u0131la\u015ft\u0131rma operat\u00f6r\u00fcd\u00fcr. Bu ikisini kar\u0131\u015ft\u0131rmak mant\u0131ksal hatalara yol a\u00e7abilir veya hatta s\u00f6zdizimi hatas\u0131 verebilir.<\/p>\n<pre><code class=\"language-python\"># Hatal\u0131 mant\u0131k (E\u011fer Python'da izin verilseydi)\n<h2>if x = 5: # Burada x'e 5 atan\u0131r, sonra 5'in do\u011fruluk de\u011feri kontrol edilir<\/h2>\n<h2>print(\"Hatal\u0131\")<\/h2>\n\n<h2>Do\u011fru<\/h2>\nx = 10\nif x == 5:\n    print(\"x 5'e e\u015fit.\")\nelse:\n    print(\"x 5'e e\u015fit de\u011fil.\")<\/code><\/pre>\n<h4>Karma\u015f\u0131k Ko\u015fullar\u0131 Basitle\u015ftirme<\/h4>\n<p>\u00c7ok uzun ve karma\u015f\u0131k <code>if<\/code> ko\u015fullar\u0131 okunabilirli\u011fi azalt\u0131r. Mant\u0131ksal operat\u00f6rleri dikkatli kullan\u0131n ve gerekirse ko\u015fulun her bir b\u00f6l\u00fcm\u00fcn\u00fc ayr\u0131 de\u011fi\u015fkenlere atayarak veya fonksiyonlara ay\u0131rarak basitle\u015ftirin.<\/p>\n<pre><code class=\"language-python\"># Karma\u015f\u0131k\n<h2>if (a > 10 and b < 20 and c == \"test\") or (d == 5 and e != 0 and f > 100):<\/h2>\n<h2>...<\/h2>\n\n<h2>Daha iyi okunabilirlik i\u00e7in<\/h2>\nko\u015ful_grubu1 = (a > 10 and b < 20 and c == \"test\")\nko\u015ful_grubu2 = (d == 5 and e != 0 and f > 100)\n\nif ko\u015ful_grubu1 or ko\u015ful_grubu2:\n    print(\"Ko\u015ful sa\u011fland\u0131.\")<\/code><\/pre>\n<h4>Okunabilirli\u011fi Art\u0131rma<\/h4>\n<p>*   <strong>Anlaml\u0131 De\u011fi\u015fken Adlar\u0131:<\/strong> Ko\u015fullarda kullan\u0131lan de\u011fi\u015fken adlar\u0131 anla\u015f\u0131l\u0131r olmal\u0131d\u0131r.<br \/>\n*   <strong>Yorumlar:<\/strong> Karma\u015f\u0131k mant\u0131\u011f\u0131 a\u00e7\u0131klamak i\u00e7in yorumlar kullan\u0131n.<br \/>\n*   <strong>Parantezler:<\/strong> Mant\u0131ksal operat\u00f6rlerin \u00f6ncelik s\u0131ras\u0131ndan kaynaklanabilecek kar\u0131\u015f\u0131kl\u0131klar\u0131 \u00f6nlemek i\u00e7in parantezler kullan\u0131n.<br \/>\n*   <strong>Kapsaml\u0131 Test Etme:<\/strong> T\u00fcm olas\u0131 senaryolar\u0131 (kenar durumlar dahil) kapsayacak \u015fekilde kodunuzu test edin.<\/p>\n<h4><code>if-elif-else<\/code> S\u0131ras\u0131n\u0131n \u00d6nemi<\/h4>\n<p>Daha \u00f6nce de belirtildi\u011fi gibi, <code>if-elif-else<\/code> zincirindeki ko\u015fullar\u0131n s\u0131ras\u0131 kritiktir. En spesifik veya en k\u0131s\u0131tlay\u0131c\u0131 ko\u015fullar genellikle zincirin ba\u015f\u0131nda yer almal\u0131d\u0131r.<\/p>\n<pre><code class=\"language-python\">yas = 15\n\nif yas < 18:\n    print(\"\u00c7ocuk\")\nelif yas < 65: # E\u011fer ilk ko\u015ful yanl\u0131\u015fsa buraya gelir\n    print(\"Yeti\u015fkin\")\nelse:\n    print(\"Ya\u015fl\u0131\")<\/code><\/pre>\n<p>E\u011fer ilk ko\u015ful <code>yas < 65<\/code> olsayd\u0131 ve <code>yas<\/code> 15 olsayd\u0131, \"Yeti\u015fkin\" yazd\u0131r\u0131l\u0131rd\u0131 ki bu yanl\u0131\u015f olurdu.<\/p>\n<h3>Geli\u015fmi\u015f Konular ve Alternatifler (K\u0131saca)<\/h3>\n<p>Baz\u0131 durumlarda, \u00e7ok say\u0131da <code>elif<\/code> blo\u011fu i\u00e7eren karma\u015f\u0131k <code>if-elif-else<\/code> yap\u0131lar\u0131n\u0131 daha \u015f\u0131k ve y\u00f6netilebilir \u015fekillerde yeniden d\u00fczenlemek m\u00fcmk\u00fcn olabilir.<\/p>\n<h4>S\u00f6zl\u00fckler (Dictionaries) ile <code>switch-case<\/code> Benzeri Yap\u0131<\/h4>\n<p>Python'da do\u011frudan bir <code>switch-case<\/code> ifadesi yoktur, ancak s\u00f6zl\u00fckler kullan\u0131larak benzer bir yap\u0131 olu\u015fturulabilir. Bu, \u00f6zellikle bir de\u011fi\u015fkene ba\u011fl\u0131 olarak farkl\u0131 fonksiyonlar\u0131 \u00e7a\u011f\u0131rmak veya farkl\u0131 de\u011ferler d\u00f6nd\u00fcrmek istedi\u011finizde kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<pre><code class=\"language-python\">def islem_topla(a, b): return a + b\ndef islem_cikar(a, b): return a - b\ndef islem_carp(a, b): return a * b\n\nislem_secenekleri = {\n    \"topla\": islem_topla,\n    \"cikar\": islem_cikar,\n    \"carp\": islem_carp,\n}\n\nsecilen_islem = \"topla\"\nsayi1 = 10\nsayi2 = 5\n\nif secilen_islem in islem_secenekleri:\n    sonuc = islem_secenekleri[secilen_islem](sayi1, sayi2)\n    print(f\"Sonu\u00e7: {sonuc}\")\nelse:\n    print(\"Ge\u00e7ersiz i\u015flem.\")<\/code><\/pre>\n<p>Bu yakla\u015f\u0131m, \u00e7ok say\u0131da <code>elif<\/code> blo\u011fundan daha temiz olabilir, \u00f6zellikle i\u015flem say\u0131s\u0131 artt\u0131k\u00e7a.<\/p>\n<h4>Polimorfizm ile Ko\u015fullu \u0130fadelerden Ka\u00e7\u0131nma<\/h4>\n<p>Nesne y\u00f6nelimli programlamada (OOP), polimorfizm bazen ko\u015fullu ifadelerin yerini alabilir. Farkl\u0131 nesnelerin ayn\u0131 metoda farkl\u0131 \u015fekillerde yan\u0131t vermesi, bir nesnenin tipine g\u00f6re <code>if-elif<\/code> kontrol\u00fc yapmaktan daha esnek ve geni\u015fletilebilir bir tasar\u0131m sa\u011flayabilir. Ancak bu, daha ileri bir konudur ve basit ko\u015fullu ifadelerin yerini her zaman almaz.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Python 3'teki ko\u015fullu ifadeler, programlar\u0131m\u0131z\u0131n dinamik ve etkile\u015fimli olmas\u0131n\u0131 sa\u011flayan temel yap\u0131 ta\u015flar\u0131d\u0131r. <code>if<\/code>, <code>else<\/code> ve <code>elif<\/code> anahtar kelimeleriyle, programlar\u0131m\u0131za karar verme yetene\u011fi kazand\u0131r\u0131r\u0131z. Kar\u015f\u0131la\u015ft\u0131rma ve mant\u0131ksal operat\u00f6rler, bu kararlar\u0131 daha karma\u015f\u0131k ve hassas hale getirmemizi sa\u011flar. Girinti kurallar\u0131na uymak, kodun okunabilirli\u011fini ve hatas\u0131z \u00e7al\u0131\u015fmas\u0131n\u0131 garanti alt\u0131na almak i\u00e7in hayati \u00f6neme sahiptir.<\/p>\n<p>Tek sat\u0131rl\u0131k <code>if-else<\/code> gibi k\u0131sa yollar ve <code>pass<\/code> ifadesi gibi yer tutucular, kod yaz\u0131m\u0131n\u0131 kolayla\u015ft\u0131r\u0131rken, i\u00e7 i\u00e7e ko\u015fullu ifadelerin veya \u00e7ok say\u0131da <code>elif<\/code> blo\u011funun a\u015f\u0131r\u0131 kullan\u0131m\u0131ndan ka\u00e7\u0131nmak, kodun s\u00fcrd\u00fcr\u00fclebilirli\u011fini ve anla\u015f\u0131l\u0131rl\u0131\u011f\u0131n\u0131 art\u0131r\u0131r. Mant\u0131ksal operat\u00f6rleri etkin bir \u015fekilde kullanmak ve gerekti\u011finde s\u00f6zl\u00fckler gibi alternatif yap\u0131lar\u0131 de\u011ferlendirmek, daha temiz ve verimli kod yazmam\u0131za yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<p>Python'da ko\u015fullu ifadeleri ustaca kullanmak, etkili ve sa\u011flam uygulamalar geli\u015ftirmek i\u00e7in vazge\u00e7ilmez bir beceridir. Bu makalede ele al\u0131nan kavramlar\u0131 ve \u00f6rnekleri pratik yaparak peki\u015ftirmek, bu alandaki yetkinli\u011finizi art\u0131rman\u0131n en iyi yoludur. Unutmay\u0131n, iyi yaz\u0131lm\u0131\u015f ko\u015fullu ifadeler, program\u0131n\u0131z\u0131n her durumda do\u011fru davranmas\u0131n\u0131 sa\u011flar ve bu da g\u00fcvenilir bir yaz\u0131l\u0131m\u0131n temelidir.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Python 3&#8217;te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r?\nGiri\u015f: Ko\u015fullu \u0130fadelerin \u00d6nemi\nProgramlama d\u00fcnyas\u0131nda, bir uygulaman\u0131n ak\u0131\u015f\u0131n\u0131 kontrol e","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-38832","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 3&#039;te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r? - 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\/python-3te-kosullu-ifadeler-nasil-yazilir\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python 3&#039;te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r?\" \/>\n<meta property=\"og:description\" content=\"Python 3&#039;te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r? Giri\u015f: Ko\u015fullu \u0130fadelerin \u00d6nemi Programlama d\u00fcnyas\u0131nda, bir uygulaman\u0131n ak\u0131\u015f\u0131n\u0131 kontrol e\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-08T14:40:42+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=\"17 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Python 3&#8217;te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r?\",\"datePublished\":\"2026-02-08T14:40:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/\"},\"wordCount\":2421,\"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\/python-3te-kosullu-ifadeler-nasil-yazilir\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/\",\"name\":\"Python 3'te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-02-08T14:40:42+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python 3&#8217;te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r?\"}]},{\"@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 3'te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r? - 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\/python-3te-kosullu-ifadeler-nasil-yazilir\/","og_locale":"tr_TR","og_type":"article","og_title":"Python 3'te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r?","og_description":"Python 3'te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r? Giri\u015f: Ko\u015fullu \u0130fadelerin \u00d6nemi Programlama d\u00fcnyas\u0131nda, bir uygulaman\u0131n ak\u0131\u015f\u0131n\u0131 kontrol e","og_url":"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-02-08T14:40:42+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"17 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Python 3&#8217;te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r?","datePublished":"2026-02-08T14:40:42+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/"},"wordCount":2421,"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\/python-3te-kosullu-ifadeler-nasil-yazilir\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/","url":"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/","name":"Python 3'te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-02-08T14:40:42+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/python-3te-kosullu-ifadeler-nasil-yazilir\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Python 3&#8217;te Ko\u015fullu \u0130fadeler Nas\u0131l Yaz\u0131l\u0131r?"}]},{"@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\/38832","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=38832"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38832\/revisions"}],"predecessor-version":[{"id":38833,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38832\/revisions\/38833"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=38832"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=38832"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=38832"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}