{"id":38145,"date":"2026-01-24T11:41:22","date_gmt":"2026-01-24T08:41:22","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=38145"},"modified":"2026-01-24T11:41:22","modified_gmt":"2026-01-24T08:41:22","slug":"python-tutorial-baslangictan-ileriye-kapsamli-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/","title":{"rendered":"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber"},"content":{"rendered":"<p><body><\/p>\n<h2>Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber<\/h2>\n<p>\n        Yaz\u0131l\u0131m d\u00fcnyas\u0131na ad\u0131m atmak isteyen herkes i\u00e7in Python, \u00f6\u011frenmesi kolay s\u00f6zdizimi ve geni\u015f uygulama alanlar\u0131yla m\u00fckemmel bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r. Web geli\u015ftirmeden yapay zekaya, veri analizinden otomasyona kadar bir\u00e7ok alanda kullan\u0131lan Python, bug\u00fcn en pop\u00fcler programlama dillerinden biridir. Bu rehber, Python&#8217;a s\u0131f\u0131rdan ba\u015flayanlar i\u00e7in temel kavramlar\u0131, kurulumu, s\u00f6zdizimini ve pratik \u00f6rnekleri kapsayan kapsaml\u0131 bir yol haritas\u0131 sunmaktad\u0131r. Haz\u0131rsan\u0131z, bu heyecan verici yolculu\u011fa birlikte \u00e7\u0131kal\u0131m!\n    <\/p>\n<h2>B\u00f6l\u00fcm 1: Python&#8217;a Giri\u015f ve Kurulum<\/h2>\n<h3>Python Nedir?<\/h3>\n<p>\n        Python, Guido van Rossum taraf\u0131ndan 1991 y\u0131l\u0131nda geli\u015ftirilmi\u015f, y\u00fcksek seviyeli, yorumlanabilen, nesne y\u00f6nelimli ve genel ama\u00e7l\u0131 bir programlama dilidir. &#8220;Okunabilirli\u011fi&#8221; ve &#8220;sadelik&#8221; felsefesi \u00fczerine kurulmu\u015ftur; bu da onu yeni ba\u015flayanlar i\u00e7in ideal k\u0131lar. Geni\u015f standart k\u00fct\u00fcphanesi sayesinde bir\u00e7ok karma\u015f\u0131k g\u00f6revi basit kodlarla halledebilirsiniz.\n    <\/p>\n<h3>Neden Python \u00d6\u011frenmelisiniz?<\/h3>\n<ul>\n<li><b>Kolay \u00d6\u011frenilebilir:<\/b> Basit ve anla\u015f\u0131l\u0131r s\u00f6zdizimi sayesinde programlamaya yeni ba\u015flayanlar h\u0131zla adapte olabilir.<\/li>\n<li><b>Geni\u015f Uygulama Alanlar\u0131:<\/b> Web geli\u015ftirme (Django, Flask), veri bilimi ve yapay zeka (Pandas, NumPy, TensorFlow), otomasyon, oyun geli\u015ftirme, masa\u00fcst\u00fc uygulamalar\u0131 gibi bir\u00e7ok alanda kullan\u0131l\u0131r.<\/li>\n<li><b>B\u00fcy\u00fck Topluluk Deste\u011fi:<\/b> Kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131z sorunlara h\u0131zl\u0131ca \u00e7\u00f6z\u00fcm bulabilece\u011finiz devasa bir geli\u015ftirici toplulu\u011fu ve zengin kaynaklar mevcuttur.<\/li>\n<li><b>\u00c7ok Y\u00f6nl\u00fcl\u00fck:<\/b> Windows, macOS, Linux gibi farkl\u0131 i\u015fletim sistemlerinde sorunsuz \u00e7al\u0131\u015f\u0131r.<\/li>\n<li><b>Y\u00fcksek Talep:<\/b> \u0130\u015f piyasas\u0131nda Python bilen geli\u015ftiricilere olan talep her ge\u00e7en g\u00fcn artmaktad\u0131r.<\/li>\n<\/ul>\n<h3>Python Kurulumu<\/h3>\n<p>\n        Python&#8217;u bilgisayar\u0131n\u0131za kurmak olduk\u00e7a basittir. Genellikle Python 3.x versiyonu tercih edilir.\n    <\/p>\n<ol>\n<li>\n            <b>Python \u0130ndirme:<\/b> <a href=\"https:\/\/www.python.org\/downloads\/\" target=\"_blank\">Python resmi web sitesine<\/a> gidin. \u0130\u015fletim sisteminize (Windows, macOS, Linux) uygun en son kararl\u0131 Python 3 s\u00fcr\u00fcm\u00fcn\u00fc indirin.\n        <\/li>\n<li>\n            <b>Kurulum:<\/b><\/p>\n<ul>\n<li>\n                    <b>Windows \u0130\u00e7in:<\/b> \u0130ndirdi\u011finiz <code>.exe<\/code> dosyas\u0131n\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n. Kurulum ekran\u0131nda <b>&#8220;Add Python X.X to PATH&#8221;<\/b> se\u00e7ene\u011fini i\u015faretlemeyi UNUTMAYIN. Bu, Python komutlar\u0131n\u0131 komut istemcisinden do\u011frudan \u00e7al\u0131\u015ft\u0131rman\u0131z\u0131 sa\u011flar. Ard\u0131ndan &#8220;Install Now&#8221; se\u00e7ene\u011fine t\u0131klayarak kurulumu tamamlay\u0131n.\n                <\/li>\n<li>\n                    <b>macOS \u0130\u00e7in:<\/b> \u0130ndirdi\u011finiz <code>.pkg<\/code> dosyas\u0131n\u0131 a\u00e7\u0131n ve ad\u0131mlar\u0131 takip ederek kurulumu tamamlay\u0131n. macOS genellikle Python&#8217;un eski bir s\u00fcr\u00fcm\u00fcyle gelir, ancak yeni uygulamalar i\u00e7in resmi siteden indirdi\u011finiz s\u00fcr\u00fcm\u00fc kullanman\u0131z \u00f6nemlidir.\n                <\/li>\n<li>\n                    <b>Linux \u0130\u00e7in:<\/b> \u00c7o\u011fu Linux da\u011f\u0131t\u0131m\u0131nda Python zaten y\u00fckl\u00fcd\u00fcr. Terminali a\u00e7arak <code>python3 --version<\/code> komutuyla kontrol edebilirsiniz. G\u00fcncel bir s\u00fcr\u00fcm yoksa, da\u011f\u0131t\u0131m\u0131n\u0131z\u0131n paket y\u00f6neticisini kullanarak (\u00f6rn: Ubuntu i\u00e7in <code>sudo apt install python3<\/code>) kurabilirsiniz.\n                <\/li>\n<\/ul>\n<\/li>\n<li>\n            <b>Kurulumu Do\u011frulama:<\/b> Komut istemcisini (Windows&#8217;ta CMD veya PowerShell, macOS\/Linux&#8217;ta Terminal) a\u00e7\u0131n ve a\u015fa\u011f\u0131daki komutlar\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">python --version\npython3 --version\npip --version\npip3 --version<\/code><\/pre>\n<p>\n                Bu komutlar Python ve pip (Python paket y\u00f6neticisi) versiyonlar\u0131n\u0131 g\u00f6stermelidir. E\u011fer hata al\u0131rsan\u0131z, kurulum ad\u0131mlar\u0131n\u0131 tekrar kontrol edin, \u00f6zellikle PATH ayar\u0131n\u0131.\n            <\/p>\n<\/li>\n<li>\n            <b>Geli\u015ftirme Ortam\u0131 (IDE) Se\u00e7imi:<\/b> Kod yazmak ve \u00e7al\u0131\u015ft\u0131rmak i\u00e7in bir IDE (Entegre Geli\u015ftirme Ortam\u0131) veya kod d\u00fczenleyici kullanman\u0131z \u00f6nerilir. Ba\u015flang\u0131\u00e7 i\u00e7in pop\u00fcler se\u00e7enekler:<\/p>\n<ul>\n<li><b>VS Code:<\/b> Hafif, \u00e7ok y\u00f6nl\u00fc ve bir\u00e7ok dil i\u00e7in eklenti deste\u011fi sunar.<\/li>\n<li><b>PyCharm Community Edition:<\/b> Python i\u00e7in \u00f6zel olarak tasarlanm\u0131\u015f, g\u00fc\u00e7l\u00fc \u00f6zelliklere sahip profesyonel bir IDE&#8217;dir.<\/li>\n<li><b>Jupyter Notebook:<\/b> Veri analizi ve etkile\u015fimli kodlama i\u00e7in idealdir.<\/li>\n<\/ul>\n<p>Bu rehberde basit kod \u00f6rnekleri i\u00e7in herhangi bir metin d\u00fczenleyici veya do\u011frudan terminal yeterli olacakt\u0131r.<\/p>\n<\/li>\n<\/ol>\n<h2>B\u00f6l\u00fcm 2: Python Temelleri: \u0130lk Ad\u0131mlar\u0131n\u0131z<\/h2>\n<h3>Merhaba D\u00fcnya!<\/h3>\n<p>\n        Her programlama dilini \u00f6\u011frenirken ilk ad\u0131m &#8220;Merhaba D\u00fcnya!&#8221; \u00e7\u0131kt\u0131s\u0131 almakt\u0131r. Python&#8217;da bu olduk\u00e7a basittir. Bir metin d\u00fczenleyici a\u00e7\u0131n, a\u015fa\u011f\u0131daki kodu yaz\u0131n ve <code>ilk_programim.py<\/code> gibi bir isimle kaydedin.\n    <\/p>\n<pre><code class=\"language-python\">print(\"Merhaba D\u00fcnya!\")<\/code><\/pre>\n<p>\n        Kaydetti\u011finiz dizine komut istemcisinden gidin ve \u015fu komutu \u00e7al\u0131\u015ft\u0131r\u0131n: <code>python ilk_programim.py<\/code>. Ekranda &#8220;Merhaba D\u00fcnya!&#8221; yaz\u0131s\u0131n\u0131 g\u00f6rmelisiniz. <code>print()<\/code> fonksiyonu, ekrana \u00e7\u0131kt\u0131 vermek i\u00e7in kullan\u0131l\u0131r.\n    <\/p>\n<h3>De\u011fi\u015fkenler ve Veri Tipleri<\/h3>\n<p>\n        De\u011fi\u015fkenler, verileri depolamak i\u00e7in kullan\u0131lan isimlendirilmi\u015f depolama alanlar\u0131d\u0131r. Python, veri tipini otomatik olarak alg\u0131lar (dinamik tiplendirme).\n    <\/p>\n<pre><code class=\"language-python\"># Say\u0131sal Veri Tipleri: int (tam say\u0131), float (ondal\u0131kl\u0131 say\u0131)\nyas = 30           # int\nboy = 1.75         # float\n\n<h2>Metin Veri Tipi: str (string)<\/h2>\nisim = \"Ay\u015fe\"      # str\nmesaj = 'Merhaba Python!' # Tek t\u0131rnak da kullan\u0131labilir\n\n<h2>Mant\u0131ksal Veri Tipi: bool (boolean)<\/h2>\naktif = True       # bool (True veya False)\npasif = False      # bool\n\nprint(f\"Ad: {isim}, Ya\u015f: {yas}, Boy: {boy}, Aktif: {aktif}\")\nprint(type(yas))   # Bir de\u011fi\u015fkenin tipini \u00f6\u011frenmek i\u00e7in type() kullan\u0131l\u0131r.\nprint(type(boy))\nprint(type(isim))<\/code><\/pre>\n<p>\n        Python&#8217;da de\u011fi\u015fken tan\u0131mlamak i\u00e7in herhangi bir anahtar kelimeye ihtiya\u00e7 yoktur, do\u011frudan atama yapabilirsiniz.\n    <\/p>\n<h3>Operat\u00f6rler<\/h3>\n<p>\n        Operat\u00f6rler, de\u011fi\u015fkenler ve de\u011ferler \u00fczerinde i\u015flemler yapmak i\u00e7in kullan\u0131l\u0131r.\n    <\/p>\n<ul>\n<li><b>Aritmetik Operat\u00f6rler:<\/b> <code>+<\/code>, <code>-<\/code>, <code><em><\/code>, <code>\/<\/code> (b\u00f6lme), <code>%<\/code> (mod alma), <code><\/em>*<\/code> (\u00fcs alma), <code>\/\/<\/code> (tam say\u0131 b\u00f6lme)<\/li>\n<li><b>Kar\u015f\u0131la\u015ft\u0131rma Operat\u00f6rleri:<\/b> <code>==<\/code> (e\u015fit mi), <code>!=<\/code> (e\u015fit de\u011fil mi), <code>><\/code> (b\u00fcy\u00fck m\u00fc), <code><<\/code> (k\u00fc\u00e7\u00fck m\u00fc), <code>>=<\/code> (b\u00fcy\u00fck e\u015fit mi), <code><=<\/code> (k\u00fc\u00e7\u00fck e\u015fit mi)<\/li>\n<li><b>Mant\u0131ksal Operat\u00f6rler:<\/b> <code>and<\/code> (ve), <code>or<\/code> (veya), <code>not<\/code> (de\u011fil)<\/li>\n<\/ul>\n<pre><code class=\"language-python\">a = 10\nb = 3\n\n<h2>Aritmetik<\/h2>\nprint(f\"Toplam: {a + b}\") # 13\nprint(f\"\u00c7arp\u0131m: {a * b}\") # 30\nprint(f\"B\u00f6l\u00fcm: {a \/ b}\")   # 3.333...\nprint(f\"Mod: {a % b}\")    # 1 (10'un 3'e b\u00f6l\u00fcm\u00fcnden kalan)\n\n<h2>Kar\u015f\u0131la\u015ft\u0131rma<\/h2>\nprint(f\"a, b'ye e\u015fit mi? {a == b}\") # False\nprint(f\"a, b'den b\u00fcy\u00fck m\u00fc? {a > b}\")  # True\n\n<h2>Mant\u0131ksal<\/h2>\nx = True\ny = False\nprint(f\"x ve y: {x and y}\") # False\nprint(f\"x veya y: {x or y}\") # True\nprint(f\"x'in de\u011fil'i: {not x}\") # False<\/code><\/pre>\n<h3>Kullan\u0131c\u0131dan Girdi Alma<\/h3>\n<p>\n        <code>input()<\/code> fonksiyonu, kullan\u0131c\u0131dan veri almak i\u00e7in kullan\u0131l\u0131r. Ald\u0131\u011f\u0131 t\u00fcm girdileri varsay\u0131lan olarak string (metin) olarak d\u00f6nd\u00fcr\u00fcr. E\u011fer say\u0131sal bir girdi bekliyorsan\u0131z, tip d\u00f6n\u00fc\u015f\u00fcm\u00fc yapman\u0131z gerekir.\n    <\/p>\n<pre><code class=\"language-python\">ad = input(\"Ad\u0131n\u0131z nedir? \")\nyas_str = input(\"Ya\u015f\u0131n\u0131z ka\u00e7? \")\nyas = int(yas_str) # String'i tam say\u0131ya d\u00f6n\u00fc\u015ft\u00fcrme\n\nprint(f\"Merhaba {ad}, {yas} ya\u015f\u0131ndas\u0131n\u0131z.\")\nprint(f\"Bir y\u0131l sonra {yas + 1} ya\u015f\u0131nda olacaks\u0131n\u0131z.\")<\/code><\/pre>\n<h2>B\u00f6l\u00fcm 3: Kontrol Ak\u0131\u015flar\u0131 ve Fonksiyonlar<\/h2>\n<h3>Ko\u015fullu \u0130fadeler (if-elif-else)<\/h3>\n<p>\n        Program\u0131n\u0131z\u0131n belirli ko\u015fullara g\u00f6re farkl\u0131 i\u015flemler yapmas\u0131n\u0131 sa\u011flamak i\u00e7in ko\u015fullu ifadeler kullan\u0131l\u0131r. Python'da bloklar girintilerle belirlenir (bo\u015fluk veya tab).\n    <\/p>\n<pre><code class=\"language-python\">hava_durumu = \"ya\u011fmurlu\"\nsicaklik = 25\n\nif hava_durumu == \"ya\u011fmurlu\":\n    print(\"\u015eemsiyeni almay\u0131 unutma!\")\nelif hava_durumu == \"g\u00fcne\u015fli\" and sicaklik > 20:\n    print(\"Hava \u00e7ok g\u00fczel, d\u0131\u015far\u0131 \u00e7\u0131kabilirsin.\")\nelse:\n    print(\"Hava durumu belirsiz.\")\n\n<h2>K\u0131sa if-else (tek sat\u0131r)<\/h2>\ndurum = \"ge\u00e7ti\" if sicaklik > 10 else \"kald\u0131\"\nprint(f\"Durum: {durum}\")<\/code><\/pre>\n<h3>D\u00f6ng\u00fcler (for ve while)<\/h3>\n<p>\n        D\u00f6ng\u00fcler, belirli bir kod blo\u011funu birden fazla kez \u00e7al\u0131\u015ft\u0131rmak i\u00e7in kullan\u0131l\u0131r.\n    <\/p>\n<ul>\n<li>\n            <b><code>for<\/code> d\u00f6ng\u00fcs\u00fc:<\/b> Bir dizi (liste, string, demet vb.) \u00fczerindeki her bir \u00f6\u011fe i\u00e7in veya belirli bir say\u0131 aral\u0131\u011f\u0131nda d\u00f6ng\u00fc yapmak i\u00e7in kullan\u0131l\u0131r.<\/p>\n<pre><code class=\"language-python\"># Bir liste \u00fczerinde d\u00f6ng\u00fc\nmeyveler = [\"elma\", \"muz\", \"kiraz\"]\nfor meyve in meyveler:\n    print(meyve)\n\n<h2>Say\u0131 aral\u0131\u011f\u0131nda d\u00f6ng\u00fc (range fonksiyonu)<\/h2>\n<h2>range(5) -> 0, 1, 2, 3, 4<\/h2>\n<h2>range(2, 7) -> 2, 3, 4, 5, 6<\/h2>\n<h2>range(0, 10, 2) -> 0, 2, 4, 6, 8<\/h2>\nfor i in range(3):\n    print(f\"Say\u0131: {i}\")<\/code><\/pre>\n<\/li>\n<li>\n            <b><code>while<\/code> d\u00f6ng\u00fcs\u00fc:<\/b> Belirli bir ko\u015ful do\u011fru oldu\u011fu s\u00fcrece \u00e7al\u0131\u015f\u0131r.<\/p>\n<pre><code class=\"language-python\">sayac = 0\nwhile sayac < 3:\n    print(f\"Say\u0131c\u0131: {sayac}\")\n    sayac += 1 # sayac = sayac + 1\n\n<h2>break ve continue<\/h2>\n<h2>break: d\u00f6ng\u00fcy\u00fc tamamen sonland\u0131r\u0131r<\/h2>\n<h2>continue: mevcut iterasyonu atlar ve bir sonraki iterasyona ge\u00e7er<\/h2>\nfor i in range(5):\n    if i == 2:\n        continue # 2'yi atla\n    if i == 4:\n        break    # 4'e gelince d\u00f6ng\u00fcy\u00fc bitir\n    print(i) # \u00c7\u0131kt\u0131: 0, 1, 3<\/code><\/pre>\n<\/li>\n<\/ul>\n<h3>Listeler, Demetler, K\u00fcmeler ve S\u00f6zl\u00fckler<\/h3>\n<p>\n        Python'da verileri d\u00fczenlemek i\u00e7in kullan\u0131lan temel veri yap\u0131lar\u0131d\u0131r.\n    <\/p>\n<ul>\n<li>\n            <b>Listeler (List):<\/b> S\u0131ral\u0131, de\u011fi\u015ftirilebilir (mutable) ve farkl\u0131 veri tiplerini i\u00e7erebilen koleksiyonlard\u0131r. K\u00f6\u015feli parantez <code>[]<\/code> ile tan\u0131mlan\u0131r.<\/p>\n<pre><code class=\"language-python\">my_list = [1, \"merhaba\", 3.14, True]\nprint(my_list[0])    # \u0130lk eleman (indeks 0'dan ba\u015flar)\nmy_list.append(\"yeni\") # Eleman ekleme\nmy_list[0] = 10      # Eleman de\u011fi\u015ftirme\nprint(my_list)<\/code><\/pre>\n<\/li>\n<li>\n            <b>Demetler (Tuple):<\/b> S\u0131ral\u0131, de\u011fi\u015ftirilemez (immutable) koleksiyonlard\u0131r. Parantez <code>()<\/code> ile tan\u0131mlan\u0131r.<\/p>\n<pre><code class=\"language-python\">my_tuple = (1, 2, \"\u00fc\u00e7\")\nprint(my_tuple[1])   # 2\n<h2>my_tuple[0] = 5 # Hata verir, \u00e7\u00fcnk\u00fc demetler de\u011fi\u015ftirilemez.<\/code><\/pre>\n<\/h2>\n<\/li>\n<li>\n            <b>K\u00fcmeler (Set):<\/b> S\u0131ras\u0131z, de\u011fi\u015ftirilebilir ve benzersiz elemanlar i\u00e7eren koleksiyonlard\u0131r. K\u00fcme parantezi <code>{}<\/code> ile tan\u0131mlan\u0131r veya <code>set()<\/code> fonksiyonu ile olu\u015fturulur.<\/p>\n<pre><code class=\"language-python\">my_set = {1, 2, 3, 2}\nprint(my_set)        # {1, 2, 3} (tekrarlayan 2 silindi)\nmy_set.add(4)\nprint(my_set)<\/code><\/pre>\n<\/li>\n<li>\n            <b>S\u00f6zl\u00fckler (Dictionary):<\/b> Anahtar-de\u011fer \u00e7iftleri (key-value pairs) \u015feklinde veri depolayan, s\u0131ras\u0131z ve de\u011fi\u015ftirilebilir koleksiyonlard\u0131r. K\u00fcme parantezi <code>{}<\/code> ile tan\u0131mlan\u0131r.<\/p>\n<pre><code class=\"language-python\">my_dict = {\"ad\": \"Ali\", \"yas\": 25, \"sehir\": \"Ankara\"}\nprint(my_dict[\"ad\"]) # Ali\nmy_dict[\"yas\"] = 26  # De\u011fer g\u00fcncelleme\nmy_dict[\"meslek\"] = \"M\u00fchendis\" # Yeni anahtar-de\u011fer ekleme\nprint(my_dict)\nprint(my_dict.keys())   # Anahtarlar\u0131 listeler\nprint(my_dict.values()) # De\u011ferleri listeler<\/code><\/pre>\n<\/li>\n<\/ul>\n<h3>Fonksiyonlar<\/h3>\n<p>\n        Fonksiyonlar, belirli bir g\u00f6revi yerine getiren yeniden kullan\u0131labilir kod bloklar\u0131d\u0131r. Kod tekrar\u0131n\u0131 azalt\u0131r, kodunuzu daha d\u00fczenli ve okunabilir hale getirir. <code>def<\/code> anahtar kelimesi ile tan\u0131mlan\u0131r.\n    <\/p>\n<pre><code class=\"language-python\"># Parametresiz fonksiyon\ndef merhaba_yaz():\n    print(\"Merhaba, fonksiyondan!\")\n\nmerhaba_yaz() # Fonksiyonu \u00e7a\u011f\u0131rma\n\n<h2>Parametreli fonksiyon<\/h2>\ndef selamla(isim):\n    print(f\"Merhaba, {isim}!\")\n\nselamla(\"Ay\u015fe\")\nselamla(\"Mehmet\")\n\n<h2>D\u00f6n\u00fc\u015f de\u011feri olan fonksiyon<\/h2>\ndef topla(sayi1, sayi2):\n    sonuc = sayi1 + sayi2\n    return sonuc # Sonucu d\u00f6nd\u00fcr\n\ntoplam = topla(5, 3)\nprint(f\"Toplam: {toplam}\") # 8\n\n<h2>Varsay\u0131lan parametre de\u011feri<\/h2>\ndef indirim_hesapla(fiyat, oran=0.10): # Varsay\u0131lan oran %10\n    indirimli_fiyat = fiyat * (1 - oran)\n    return indirimli_fiyat\n\nprint(f\"100 TL'lik \u00fcr\u00fcn\u00fcn %10 indirimli fiyat\u0131: {indirim_hesapla(100)}\")\nprint(f\"100 TL'lik \u00fcr\u00fcn\u00fcn %20 indirimli fiyat\u0131: {indirim_hesapla(100, 0.20)}\")<\/code><\/pre>\n<h2>B\u00f6l\u00fcm 4: Dosya \u0130\u015flemleri ve Mod\u00fcller<\/h2>\n<h3>Dosya Okuma ve Yazma<\/h3>\n<p>\n        Python, dosyalarla kolayca etkile\u015fim kurman\u0131z\u0131 sa\u011flar. Dosya i\u015flemleri i\u00e7in <code>open()<\/code> fonksiyonu kullan\u0131l\u0131r.\n    <\/p>\n<ul>\n<li><b>'w' (write):<\/b> Dosyay\u0131 yazma modunda a\u00e7ar. E\u011fer dosya yoksa olu\u015fturur, varsa i\u00e7eri\u011fini siler ve yeniden yazar.<\/li>\n<li><b>'a' (append):<\/b> Dosyay\u0131 ekleme modunda a\u00e7ar. E\u011fer dosya yoksa olu\u015fturur, varsa i\u00e7eri\u011fin sonuna ekler.<\/li>\n<li><b>'r' (read):<\/b> Dosyay\u0131 okuma modunda a\u00e7ar. Dosya yoksa hata verir.<\/li>\n<\/ul>\n<pre><code class=\"language-python\"># Dosyaya yazma\n<h2>'with open()' kullanmak, dosya i\u015flemleri bittikten sonra dosyay\u0131 otomatik kapat\u0131r.<\/h2>\nwith open(\"ornek.txt\", \"w\", encoding=\"utf-8\") as dosya:\n    dosya.write(\"Bu ilk sat\u0131r.\\n\")\n    dosya.write(\"Bu da ikinci sat\u0131r.\\n\")\nprint(\"Dosyaya yaz\u0131ld\u0131.\")\n\n<h2>Dosyadan okuma<\/h2>\nwith open(\"ornek.txt\", \"r\", encoding=\"utf-8\") as dosya:\n    icerik = dosya.read() # T\u00fcm i\u00e7eri\u011fi oku\n    print(\"\\nDosya \u0130\u00e7eri\u011fi:\")\n    print(icerik)\n\n<h2>Sat\u0131r sat\u0131r okuma<\/h2>\nwith open(\"ornek.txt\", \"r\", encoding=\"utf-8\") as dosya:\n    print(\"\\nSat\u0131r Sat\u0131r Dosya \u0130\u00e7eri\u011fi:\")\n    for satir in dosya:\n        print(satir.strip()) # strip() ile sat\u0131r sonundaki bo\u015fluklar\u0131\/newline karakterini kald\u0131r<\/code><\/pre>\n<h3>Python Mod\u00fclleri<\/h3>\n<p>\n        Mod\u00fcller, Python kodunu d\u00fczenlemenin ve yeniden kullanman\u0131n bir yoludur. Bir mod\u00fcl, Python fonksiyonlar\u0131, s\u0131n\u0131flar\u0131 ve de\u011fi\u015fkenleri i\u00e7eren bir <code>.py<\/code> uzant\u0131l\u0131 dosyad\u0131r. Python'da binlerce haz\u0131r mod\u00fcl bulunur ve kendi mod\u00fcllerinizi de olu\u015fturabilirsiniz.\n    <\/p>\n<pre><code class=\"language-python\"># \u00d6rnek: math mod\u00fcl\u00fcn\u00fc kullanarak matematiksel i\u015flemler yapma\nimport math\n\nprint(f\"Pi say\u0131s\u0131: {math.pi}\")\nprint(f\"16'n\u0131n karek\u00f6k\u00fc: {math.sqrt(16)}\")\n\n<h2>Sadece belirli bir fonksiyonu import etme<\/h2>\nfrom math import factorial\nprint(f\"5'in fakt\u00f6riyeli: {factorial(5)}\") # 120\n\n<h2>Kendi mod\u00fcl\u00fcm\u00fcz\u00fc olu\u015fturma (\u00f6rne\u011fin, 'benim_modulum.py' ad\u0131nda bir dosya olu\u015fturun)<\/h2>\n<h2>benim_modulum.py i\u00e7eri\u011fi:<\/h2>\n<h2>def selam_ver(isim):<\/h2>\n<h2>return f\"Merhaba {isim}, benim mod\u00fcl\u00fcmden!\"<\/h2>\n\n<h2>Ba\u015fka bir Python dosyas\u0131nda kullanma:<\/h2>\n<h2>import benim_modulum<\/h2>\n<h2>print(benim_modulum.selam_ver(\"D\u00fcnya\"))<\/code><\/pre>\n<\/h2>\n<p>\n        Mod\u00fcller sayesinde kodunuzu daha mod\u00fcler, okunabilir ve y\u00f6netilebilir hale getirebilirsiniz. Ayr\u0131ca, PyPI (Python Package Index) \u00fczerinden <code>pip install <paket_ad\u0131><\/code> komutuyla bir\u00e7ok \u00fc\u00e7\u00fcnc\u00fc taraf paketi (\u00f6rne\u011fin <code>requests<\/code>, <code>pandas<\/code>) kolayca kurup kullanabilirsiniz.\n    <\/p>\n<h2>Sonu\u00e7 ve S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h2>\n<p>\n        Bu rehber, Python programlama dilinin temellerini anlaman\u0131z i\u00e7in size kapsaml\u0131 bir ba\u015flang\u0131\u00e7 noktas\u0131 sunmu\u015ftur. De\u011fi\u015fkenlerden kontrol ak\u0131\u015flar\u0131na, veri yap\u0131lar\u0131ndan fonksiyonlara ve dosya i\u015flemlerine kadar bir\u00e7ok \u00f6nemli konuyu ele ald\u0131k. Unutmay\u0131n ki programlama \u00f6\u011frenmek bir maratondur, sprint de\u011fil. Pratik yapmak, bol bol kod yazmak ve hatalarla y\u00fczle\u015fmek \u00f6\u011frenme s\u00fcrecinin ayr\u0131lmaz bir par\u00e7as\u0131d\u0131r. Bu temelleri sa\u011flam bir \u015fekilde \u00f6\u011frendikten sonra, ilgi alanlar\u0131n\u0131za g\u00f6re web geli\u015ftirme, veri bilimi, yapay zeka gibi alanlara y\u00f6nelebilirsiniz. Ba\u015far\u0131lar dileriz!\n    <\/p>\n<h3>SSS (S\u0131k\u00e7a Sorulan Sorular)<\/h3>\n<dl>\n<dt>Python \u00f6\u011frenmek ne kadar s\u00fcrer?<\/dt>\n<dd>\n            Temelleri \u00f6\u011frenmek birka\u00e7 hafta s\u00fcrebilirken, uzmanla\u015fmak ve karma\u015f\u0131k projeler geli\u015ftirmek aylar hatta y\u0131llar alabilir. \u00d6nemli olan d\u00fczenli pratik yapmak ve s\u00fcrekli \u00f6\u011frenmeye a\u00e7\u0131k olmakt\u0131r. G\u00fcnde 1-2 saat ay\u0131rarak birka\u00e7 ay i\u00e7inde anlaml\u0131 projeler yapabilecek seviyeye gelebilirsiniz.\n        <\/dd>\n<dt>Hangi IDE'yi veya kod d\u00fczenleyiciyi kullanmal\u0131y\u0131m?<\/dt>\n<dd>\n            Ba\u015flang\u0131\u00e7 i\u00e7in <a href=\"https:\/\/code.visualstudio.com\/\" target=\"_blank\">VS Code<\/a> veya <a href=\"https:\/\/www.jetbrains.com\/pycharm\/download\/\" target=\"_blank\">PyCharm Community Edition<\/a> m\u00fckemmel se\u00e7eneklerdir. VS Code daha hafif ve genel ama\u00e7l\u0131yken, PyCharm Python odakl\u0131 g\u00fc\u00e7l\u00fc \u00f6zellikler sunar. \u0130kisini de deneyerek size en uygun olan\u0131 se\u00e7ebilirsiniz.\n        <\/dd>\n<dt>Python ile neler yapabilirim?<\/dt>\n<dd>\n            Python ile yapabilecekleriniz neredeyse s\u0131n\u0131rs\u0131zd\u0131r:<\/p>\n<ul>\n<li>Web uygulamalar\u0131 geli\u015ftirebilirsiniz (Django, Flask).<\/li>\n<li>Veri analizi ve g\u00f6rselle\u015ftirme yapabilirsiniz (Pandas, NumPy, Matplotlib).<\/li>\n<li>Yapay zeka ve makine \u00f6\u011frenimi modelleri olu\u015fturabilirsiniz (TensorFlow, Keras, Scikit-learn).<\/li>\n<li>Otomasyon betikleri yazabilirsiniz (sistem y\u00f6netimi, dosya i\u015flemleri).<\/li>\n<li>Oyun geli\u015ftirebilirsiniz (Pygame).<\/li>\n<li>Masa\u00fcst\u00fc uygulamalar\u0131 yapabilirsiniz (Tkinter, PyQt).<\/li>\n<\/ul>\n<\/dd>\n<dt>Bir sonraki ad\u0131m ne olmal\u0131?<\/dt>\n<dd>\n            Temelleri \u00f6\u011frendikten sonra, k\u00fc\u00e7\u00fck projeler geli\u015ftirmeye ba\u015flay\u0131n. \u00d6rne\u011fin, bir hesap makinesi, bir kelime sayac\u0131 veya basit bir not defteri uygulamas\u0131 yapmay\u0131 deneyin. Ard\u0131ndan ilgi alanlar\u0131n\u0131za g\u00f6re belirli bir alana (web, veri bilimi vb.) odaklanarak o alandaki k\u00fct\u00fcphaneleri ve framework'leri \u00f6\u011frenmeye ba\u015flay\u0131n. Online kurslar, dok\u00fcmantasyonlar ve topluluklar size yol g\u00f6sterecektir.\n        <\/dd>\n<\/dl>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber\n        Yaz\u0131l\u0131m d\u00fcnyas\u0131na ad\u0131m atmak isteyen herkes i\u00e7in Python, \u00f6\u011frenmes","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-38145","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 Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber - 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-tutorial-baslangictan-ileriye-kapsamli-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber\" \/>\n<meta property=\"og:description\" content=\"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber       Yaz\u0131l\u0131m d\u00fcnyas\u0131na ad\u0131m atmak isteyen herkes i\u00e7in Python, \u00f6\u011frenmes\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-24T08:41:22+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=\"11 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber\",\"datePublished\":\"2026-01-24T08:41:22+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/\"},\"wordCount\":1626,\"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-tutorial-baslangictan-ileriye-kapsamli-rehber\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/\",\"name\":\"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-01-24T08:41:22+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber\"}]},{\"@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 Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber - 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-tutorial-baslangictan-ileriye-kapsamli-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber","og_description":"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber       Yaz\u0131l\u0131m d\u00fcnyas\u0131na ad\u0131m atmak isteyen herkes i\u00e7in Python, \u00f6\u011frenmes","og_url":"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-01-24T08:41:22+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"11 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber","datePublished":"2026-01-24T08:41:22+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/"},"wordCount":1626,"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-tutorial-baslangictan-ileriye-kapsamli-rehber\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/","name":"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-01-24T08:41:22+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/python-tutorial-baslangictan-ileriye-kapsamli-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Python Tutorial: Ba\u015flang\u0131\u00e7tan \u0130leriye Kapsaml\u0131 Rehber"}]},{"@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\/38145","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=38145"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38145\/revisions"}],"predecessor-version":[{"id":38146,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38145\/revisions\/38146"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=38145"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=38145"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=38145"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}