{"id":38313,"date":"2026-01-28T14:40:50","date_gmt":"2026-01-28T11:40:50","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=38313"},"modified":"2026-01-28T14:40:50","modified_gmt":"2026-01-28T11:40:50","slug":"python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/","title":{"rendered":"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu"},"content":{"rendered":"<p><body><\/p>\n<h2>Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu<\/h2>\n<p>Python, g\u00fcn\u00fcm\u00fcz\u00fcn en pop\u00fcler ve \u00e7ok y\u00f6nl\u00fc programlama dillerinden biridir. Web geli\u015ftirmeden veri bilimine, yapay zekadan otomasyona kadar geni\u015f bir yelpazede kullan\u0131lmaktad\u0131r. Bu makalede, Ubuntu 20.04 i\u015fletim sistemi \u00fczerinde Python 3&#8217;\u00fc nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 ve projeleriniz i\u00e7in izole edilmi\u015f, yerel bir programlama ortam\u0131n\u0131 nas\u0131l olu\u015fturaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klayaca\u011f\u0131z. G\u00fcvenli, s\u00fcrd\u00fcr\u00fclebilir ve verimli bir geli\u015ftirme s\u00fcreci i\u00e7in gerekli t\u00fcm temel ad\u0131mlar\u0131 ve en iyi uygulamalar\u0131 ele alaca\u011f\u0131z.<\/p>\n<h3>Giri\u015f<\/h3>\n<p>Python&#8217;\u0131n pop\u00fclaritesi, basit ve okunabilir s\u00f6zdizimi, geni\u015f standart k\u00fct\u00fcphanesi ve devasa \u00fc\u00e7\u00fcnc\u00fc taraf paket ekosisteminden gelmektedir. Yeni ba\u015flayanlar i\u00e7in \u00f6\u011frenmesi kolay oldu\u011fu kadar, deneyimli geli\u015ftiriciler i\u00e7in de karma\u015f\u0131k uygulamalar geli\u015ftirmek i\u00e7in g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r. Ubuntu 20.04 LTS (Uzun S\u00fcreli Destek) s\u00fcr\u00fcm\u00fc, kararl\u0131l\u0131\u011f\u0131 ve geni\u015f yaz\u0131l\u0131m deste\u011fi nedeniyle bir\u00e7ok geli\u015ftirici taraf\u0131ndan tercih edilen bir platformdur. Bu rehber, Ubuntu 20.04 kullan\u0131c\u0131lar\u0131n\u0131n Python 3 ile sorunsuz bir \u015fekilde \u00e7al\u0131\u015fmaya ba\u015flamalar\u0131n\u0131 sa\u011flamak amac\u0131yla haz\u0131rlanm\u0131\u015ft\u0131r.<\/p>\n<p>Bir programlama ortam\u0131 kurarken dikkat edilmesi gereken en \u00f6nemli noktalardan biri, sistem genelindeki Python kurulumunu etkilemeden farkl\u0131 projeler i\u00e7in farkl\u0131 Python s\u00fcr\u00fcmleri veya paket ba\u011f\u0131ml\u0131l\u0131klar\u0131 y\u00f6netebilmektir. Bu nedenle, sanal ortamlar\u0131n (virtual environments) kullan\u0131m\u0131 kritik \u00f6neme sahiptir. Bu makale, sadece Python&#8217;\u0131n kendisini kurmakla kalmayacak, ayn\u0131 zamanda bu sanal ortamlar\u0131 nas\u0131l etkili bir \u015fekilde kullanaca\u011f\u0131n\u0131z\u0131 da detayland\u0131racakt\u0131r.<\/p>\n<h3>Ubuntu 20.04&#8217;te Python 3&#8217;\u00fcn Durumu<\/h3>\n<p>Ubuntu, varsay\u0131lan olarak Python&#8217;\u0131n belirli bir s\u00fcr\u00fcm\u00fc ile birlikte gelir. Bu, i\u015fletim sisteminin kendisi taraf\u0131ndan kullan\u0131lan \u00e7e\u015fitli sistem ara\u00e7lar\u0131 ve komut dosyalar\u0131 i\u00e7in gereklidir. Bu durum, yeni bir Python kurulumu yaparken veya mevcut bir s\u00fcr\u00fcm\u00fc g\u00fcncellerken baz\u0131 dikkatli ad\u0131mlar atmay\u0131 gerektirir.<\/p>\n<h4>\u00d6n Y\u00fckl\u00fc Python S\u00fcr\u00fcmleri<\/h4>\n<p>Ubuntu 20.04, Python 3.8.x serisi ile birlikte gelir. Sisteminizde hangi Python s\u00fcr\u00fcmlerinin y\u00fckl\u00fc oldu\u011funu kontrol etmek i\u00e7in a\u015fa\u011f\u0131daki komutlar\u0131 kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">python3 --version\npython --version<\/code><\/pre>\n<p>Genellikle, <code>python3<\/code> komutu Python 3.x s\u00fcr\u00fcm\u00fcn\u00fc, <code>python<\/code> komutu ise (e\u011fer bir sembolik ba\u011flant\u0131 olu\u015fturulmad\u0131ysa) Python 2.x s\u00fcr\u00fcm\u00fcn\u00fc veya hi\u00e7biri y\u00fckl\u00fc de\u011filse bir hata mesaj\u0131n\u0131 g\u00f6sterecektir. Ubuntu 20.04&#8217;te, Python 2 varsay\u0131lan olarak y\u00fckl\u00fc gelmez, ancak baz\u0131 eski uygulamalar i\u00e7in manuel olarak kurulabilir. Bizim odak noktam\u0131z Python 3 olacakt\u0131r.<\/p>\n<h4>Neden Yeni Bir Kurulum Gerekebilir?<\/h4>\n<p>Ubuntu ile gelen Python 3.8 s\u00fcr\u00fcm\u00fc \u00e7o\u011fu kullan\u0131m durumu i\u00e7in yeterli olsa da, baz\u0131 senaryolarda daha yeni bir Python s\u00fcr\u00fcm\u00fcne (\u00f6rne\u011fin, Python 3.9, 3.10 veya 3.11) ihtiya\u00e7 duyabilirsiniz:<\/p>\n<ul>\n<li><strong>En Yeni \u00d6zellikler ve Performans \u0130yile\u015ftirmeleri:<\/strong> Python&#8217;\u0131n her yeni s\u00fcr\u00fcm\u00fc, dilin kendisine yeni \u00f6zellikler, s\u00f6zdizimi geli\u015ftirmeleri ve \u00f6nemli performans iyile\u015ftirmeleri getirir.<\/li>\n<li><strong>Proje Ba\u011f\u0131ml\u0131l\u0131klar\u0131:<\/strong> Baz\u0131 k\u00fct\u00fcphaneler veya \u00e7er\u00e7eveler, belirli bir Python s\u00fcr\u00fcm\u00fcn\u00fc veya daha yeni bir s\u00fcr\u00fcm\u00fc gerektirebilir.<\/li>\n<li><strong>Geli\u015ftirme Standartlar\u0131:<\/strong> G\u00fcncel bir Python s\u00fcr\u00fcm\u00fcyle \u00e7al\u0131\u015fmak, projelerinizin uzun vadeli s\u00fcrd\u00fcr\u00fclebilirli\u011fi ve di\u011fer geli\u015ftiricilerle uyumlulu\u011fu a\u00e7\u0131s\u0131ndan faydal\u0131d\u0131r.<\/li>\n<\/ul>\n<p>Bu makalede, hem Ubuntu&#8217;nun resmi depolar\u0131ndan Python 3.8&#8217;i kurmay\u0131 (veya g\u00fcncellemeyi) hem de daha yeni s\u00fcr\u00fcmleri Deadsnakes PPA arac\u0131l\u0131\u011f\u0131yla nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 g\u00f6sterece\u011fiz. Ayr\u0131ca, en esnek ve kontrol edilebilir y\u00f6ntem olan kaynak koddan kurulumu da ele alaca\u011f\u0131z.<\/p>\n<h3>Sistem G\u00fcncellemesi ve Temel Ba\u011f\u0131ml\u0131l\u0131klar\u0131n Kurulumu<\/h3>\n<p>Herhangi bir yaz\u0131l\u0131m kurulumuna ba\u015flamadan \u00f6nce, sisteminizin g\u00fcncel oldu\u011fundan ve gerekli temel ba\u011f\u0131ml\u0131l\u0131klar\u0131n y\u00fckl\u00fc oldu\u011fundan emin olmak iyi bir uygulamad\u0131r. Bu, potansiyel uyumluluk sorunlar\u0131n\u0131 \u00f6nler ve kurulum s\u00fcrecinin sorunsuz ilerlemesini sa\u011flar.<\/p>\n<p>Terminali a\u00e7\u0131n (Ctrl+Alt+T) ve a\u015fa\u011f\u0131daki komutlar\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt upgrade -y<\/code><\/pre>\n<p>Bu komutlar, sisteminizin paket listesini g\u00fcnceller ve mevcut t\u00fcm y\u00fckl\u00fc paketleri en son s\u00fcr\u00fcmlerine y\u00fckseltir. Ard\u0131ndan, Python kurulumu i\u00e7in gerekli olabilecek baz\u0131 temel paketleri kural\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo apt install software-properties-common build-essential libssl-dev libffi-dev python3-dev -y<\/code><\/pre>\n<ul>\n<li><code>software-properties-common<\/code>: PPA&#8217;lar (Personal Package Archives) eklemek i\u00e7in gereklidir.<\/li>\n<li><code>build-essential<\/code>: Kaynak koddan derleme yaparken ihtiya\u00e7 duyulan derleyici ara\u00e7lar\u0131n\u0131 i\u00e7erir.<\/li>\n<li><code>libssl-dev<\/code> ve <code>libffi-dev<\/code>: Python&#8217;\u0131n SSL\/TLS ve yabanc\u0131 fonksiyon aray\u00fcz\u00fc mod\u00fclleri i\u00e7in geli\u015ftirme ba\u015fl\u0131klar\u0131d\u0131r. Bu paketler, baz\u0131 Python k\u00fct\u00fcphanelerinin (\u00f6rne\u011fin <code>cryptography<\/code>) do\u011fru \u015fekilde derlenmesi ve \u00e7al\u0131\u015fmas\u0131 i\u00e7in gereklidir.<\/li>\n<li><code>python3-dev<\/code>: Python 3 i\u00e7in geli\u015ftirme ba\u015fl\u0131klar\u0131n\u0131 ve statik k\u00fct\u00fcphaneleri i\u00e7erir. Bu, C uzant\u0131lar\u0131 gerektiren Python paketlerinin derlenmesi i\u00e7in \u00f6nemlidir.<\/li>\n<\/ul>\n<h3>Python 3 Kurulum Y\u00f6ntemleri<\/h3>\n<p>Ubuntu \u00fczerinde Python 3 kurman\u0131n birka\u00e7 farkl\u0131 yolu vard\u0131r. \u0130htiya\u00e7lar\u0131n\u0131za ve tercihlerinize ba\u011fl\u0131 olarak en uygun y\u00f6ntemi se\u00e7ebilirsiniz.<\/p>\n<h4>APT ile Python 3 Kurulumu (\u00d6nerilen ve En Basit Y\u00f6ntem)<\/h4>\n<p>Bu y\u00f6ntem, Ubuntu&#8217;nun resmi depolar\u0131nda bulunan Python 3 s\u00fcr\u00fcm\u00fcn\u00fc (Ubuntu 20.04 i\u00e7in genellikle Python 3.8) kurmak i\u00e7in en basit ve en g\u00fcvenli yoldur. \u00c7o\u011fu kullan\u0131c\u0131 i\u00e7in bu yeterlidir ve sistemle en iyi uyumu sa\u011flar.<\/p>\n<h5>Kurulum Ad\u0131mlar\u0131<\/h5>\n<p>Python 3&#8217;\u00fc ve PIP (Python Paket Y\u00f6neticisi) i\u00e7in gerekli olan <code>python3-pip<\/code> paketini kurmak i\u00e7in a\u015fa\u011f\u0131daki komutu kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo apt install python3 python3-pip -y<\/code><\/pre>\n<p>Bu komut, sisteminizde Python 3.8&#8217;i ve ona \u00f6zel PIP s\u00fcr\u00fcm\u00fcn\u00fc kuracakt\u0131r.<\/p>\n<h5>S\u00fcr\u00fcm Kontrol\u00fc<\/h5>\n<p>Kurulumun ba\u015far\u0131l\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in Python s\u00fcr\u00fcm\u00fcn\u00fc kontrol edin:<\/p>\n<pre><code class=\"language-bash\">python3 --version<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131, y\u00fckl\u00fc olan Python 3 s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6stermelidir (\u00f6rne\u011fin, <code>Python 3.8.10<\/code>).<\/p>\n<h5>PIP Kurulumu<\/h5>\n<p>Yukar\u0131daki komutla <code>python3-pip<\/code> paketi de kurulmu\u015f olmal\u0131d\u0131r. PIP&#8217;in do\u011fru \u015fekilde kuruldu\u011funu ve \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 do\u011frulamak i\u00e7in s\u00fcr\u00fcm\u00fcn\u00fc kontrol edin:<\/p>\n<pre><code class=\"language-bash\">pip3 --version<\/code><\/pre>\n<p>PIP, Python paketlerini kurmak ve y\u00f6netmek i\u00e7in kullan\u0131lan standart ara\u00e7t\u0131r. Sanal ortamlar i\u00e7inde PIP&#8217;i kullanmak, sistem genelindeki Python kurulumunuzu kirletmeden ba\u011f\u0131ml\u0131l\u0131klar\u0131 y\u00f6netmenizi sa\u011flar.<\/p>\n<h4>Deadsnakes PPA ile Daha Yeni Python S\u00fcr\u00fcmleri Kurulumu<\/h4>\n<p>E\u011fer Ubuntu&#8217;nun resmi depolar\u0131nda bulunandan daha yeni bir Python s\u00fcr\u00fcm\u00fcne (\u00f6rne\u011fin, Python 3.9, 3.10, 3.11 veya 3.12) ihtiyac\u0131n\u0131z varsa, Deadsnakes PPA&#8217;s\u0131n\u0131 kullanabilirsiniz. Bu PPA, Ubuntu kullan\u0131c\u0131lar\u0131 i\u00e7in \u00e7e\u015fitli Python s\u00fcr\u00fcmlerini kolayca kurma imkan\u0131 sunar ve genellikle g\u00fcvenilir bir kaynakt\u0131r.<\/p>\n<h5>PPA Ekleme<\/h5>\n<p>\u00d6ncelikle, Deadsnakes PPA&#8217;s\u0131n\u0131 sisteminize eklemeniz gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo add-apt-repository ppa:deadsnakes\/ppa -y\nsudo apt update<\/code><\/pre>\n<p>\u0130lk komut PPA&#8217;y\u0131 eklerken, ikinci komut paket listelerinizi g\u00fcncelleyerek yeni depodaki paketleri kullan\u0131labilir hale getirir.<\/p>\n<h5>Python Kurulumu<\/h5>\n<p>\u015eimdi istedi\u011finiz Python s\u00fcr\u00fcm\u00fcn\u00fc kurabilirsiniz. \u00d6rne\u011fin, Python 3.10&#8217;u kurmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo apt install python3.10 -y<\/code><\/pre>\n<p>Di\u011fer s\u00fcr\u00fcmler i\u00e7in (\u00f6rne\u011fin 3.9, 3.11, 3.12), komutu buna g\u00f6re de\u011fi\u015ftirmeniz yeterlidir (\u00f6rne\u011fin, <code>python3.9<\/code>, <code>python3.11<\/code>, <code>python3.12<\/code>).<\/p>\n<h5>Varsay\u0131lan Python S\u00fcr\u00fcm\u00fcn\u00fc De\u011fi\u015ftirme (update-alternatives)<\/h5>\n<p>Birden fazla Python s\u00fcr\u00fcm\u00fcn\u00fcz varsa ve belirli bir s\u00fcr\u00fcm\u00fc varsay\u0131lan <code>python3<\/code> komutu olarak ayarlamak istiyorsan\u0131z, <code>update-alternatives<\/code> arac\u0131n\u0131 kullanabilirsiniz. Ancak, bu i\u015flemi dikkatli yapmal\u0131s\u0131n\u0131z, \u00e7\u00fcnk\u00fc sistem uygulamalar\u0131 i\u00e7in kullan\u0131lan Python s\u00fcr\u00fcm\u00fcn\u00fc de\u011fi\u015ftirmek sistem kararl\u0131l\u0131\u011f\u0131n\u0131 etkileyebilir. Genellikle, sanal ortamlar kullanmak daha g\u00fcvenli bir yakla\u015f\u0131md\u0131r.<\/p>\n<p>Yine de, bunu nas\u0131l yapaca\u011f\u0131n\u0131z\u0131 bilmek isteyebilirsiniz. \u0130lk olarak, mevcut Python 3 alternatiflerini kaydedin:<\/p>\n<pre><code class=\"language-bash\">sudo update-alternatives --install \/usr\/bin\/python3 python3 \/usr\/bin\/python3.8 1\nsudo update-alternatives --install \/usr\/bin\/python3 python3 \/usr\/bin\/python3.10 2<\/code><\/pre>\n<p>Burada, <code>\/usr\/bin\/python3.8<\/code> i\u00e7in \u00f6ncelik 1, <code>\/usr\/bin\/python3.10<\/code> i\u00e7in \u00f6ncelik 2 verilmi\u015ftir. Daha y\u00fcksek \u00f6ncelikli olan varsay\u0131lan olarak se\u00e7ilecektir. Daha sonra, alternatifler aras\u0131ndan se\u00e7im yapabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo update-alternatives --config python3<\/code><\/pre>\n<p>Bu komut, size y\u00fckl\u00fc Python 3 s\u00fcr\u00fcmlerini listeleyecek ve varsay\u0131lan olarak kullanmak istedi\u011finiz s\u00fcr\u00fcm\u00fcn numaras\u0131n\u0131 girmenizi isteyecektir.<\/p>\n<h5>PIP Kurulumu<\/h5>\n<p>Yeni kurdu\u011funuz Python s\u00fcr\u00fcm\u00fc i\u00e7in PIP&#8217;i de kurman\u0131z gerekir. \u00d6rne\u011fin, Python 3.10 i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo apt install python3.10-venv python3.10-pip -y<\/code><\/pre>\n<p>S\u00fcr\u00fcm kontrol\u00fc:<\/p>\n<pre><code class=\"language-bash\">python3.10 --version\npip3.10 --version<\/code><\/pre>\n<h4>Kaynak Koddan Python 3 Kurulumu (Geli\u015fmi\u015f Kullan\u0131c\u0131lar \u0130\u00e7in)<\/h4>\n<p>Kaynak koddan Python kurmak, size en yeni s\u00fcr\u00fcmlere, \u00f6zel derleme se\u00e7eneklerine ve daha fazla kontrol imkan\u0131 sunar. Ancak, bu y\u00f6ntem di\u011ferlerine g\u00f6re daha karma\u015f\u0131kt\u0131r ve derleme hatalar\u0131yla kar\u015f\u0131la\u015fma olas\u0131l\u0131\u011f\u0131n\u0131z daha y\u00fcksektir. Genellikle, \u00f6zel bir Python s\u00fcr\u00fcm\u00fcne veya geli\u015ftirme ortam\u0131na ihtiyac\u0131n\u0131z oldu\u011funda tercih edilir.<\/p>\n<h5>Gerekli Ba\u011f\u0131ml\u0131l\u0131klar<\/h5>\n<p>Derleme i\u015flemi i\u00e7in ek ba\u011f\u0131ml\u0131l\u0131klara ihtiyac\u0131n\u0131z olacakt\u0131r:<\/p>\n<pre><code class=\"language-bash\">sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev libbz2-dev -y<\/code><\/pre>\n<p>Bu paketler, Python&#8217;\u0131n \u00e7e\u015fitli mod\u00fcllerinin (\u00f6rne\u011fin, zlib, sqlite3, ssl) do\u011fru \u015fekilde derlenmesi i\u00e7in gereklidir.<\/p>\n<h5>Kaynak Kodu \u0130ndirme<\/h5>\n<p>Python&#8217;\u0131n resmi web sitesinden (python.org) istedi\u011finiz s\u00fcr\u00fcm\u00fcn kaynak kodunu indirin. \u00d6rne\u011fin, Python 3.11.4&#8217;\u00fc indirmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">wget https:\/\/www.python.org\/ftp\/python\/3.11.4\/Python-3.11.4.tgz\ntar -xf Python-3.11.4.tgz<\/code><\/pre>\n<p>\u0130ndirdi\u011finiz ar\u015fiv dosyas\u0131n\u0131 a\u00e7\u0131n ve olu\u015fan dizine gidin:<\/p>\n<pre><code class=\"language-bash\">cd Python-3.11.4<\/code><\/pre>\n<h5>Derleme ve Kurulum<\/h5>\n<p>\u015eimdi Python&#8217;\u0131 derleyebilir ve kurabilirsiniz. <code>--enable-optimizations<\/code> bayra\u011f\u0131, derleme s\u00fcresini uzatsa da Python&#8217;\u0131n performans\u0131n\u0131 art\u0131r\u0131r. <code>--with-ensurepip=install<\/code> bayra\u011f\u0131 ise PIP&#8217;in otomatik olarak kurulmas\u0131n\u0131 sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">.\/configure --enable-optimizations --with-ensurepip=install<\/code><\/pre>\n<p>Derleme i\u015flemini ba\u015flat\u0131n. <code>-j<\/code> bayra\u011f\u0131 ile \u00e7ekirdek say\u0131s\u0131n\u0131 belirterek derleme s\u00fcresini h\u0131zland\u0131rabilirsiniz (\u00f6rne\u011fin, <code>-j$(nproc)<\/code> t\u00fcm i\u015flemci \u00e7ekirdeklerini kullan\u0131r):<\/p>\n<pre><code class=\"language-bash\">make -j$(nproc)<\/code><\/pre>\n<p>Kurulumu ger\u00e7ekle\u015ftirin. <code>altinstall<\/code> kullanmak, sistemin varsay\u0131lan Python ikililerini de\u011fi\u015ftirmemek i\u00e7in \u00f6nemlidir. Bu, mevcut Python kurulumlar\u0131n\u0131zla \u00e7ak\u0131\u015fmay\u0131 \u00f6nler.<\/p>\n<pre><code class=\"language-bash\">sudo make altinstall<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, kaynak kod dizininden \u00e7\u0131kabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">cd ..<\/code><\/pre>\n<h5>S\u00fcr\u00fcm Kontrol\u00fc<\/h5>\n<p>Yeni kurdu\u011funuz Python s\u00fcr\u00fcm\u00fcn\u00fc kontrol edin. \u00d6rne\u011fin, Python 3.11.4 i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">python3.11 --version<\/code><\/pre>\n<h5>PIP Kurulumu<\/h5>\n<p><code>altinstall<\/code> kulland\u0131\u011f\u0131n\u0131zda, PIP de genellikle ilgili Python s\u00fcr\u00fcm\u00fc ile birlikte kurulur. Do\u011frulamak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">pip3.11 --version<\/code><\/pre>\n<p>E\u011fer PIP kurulmam\u0131\u015fsa veya sorun ya\u015f\u0131yorsan\u0131z, <code>get-pip.py<\/code> beti\u011fini kullanarak manuel olarak kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">wget https:\/\/bootstrap.pypa.io\/get-pip.py\npython3.11 get-pip.py<\/code><\/pre>\n<h3>Yerel Programlama Ortam\u0131 Kurulumu (Sanal Ortamlar &#8211; Virtual Environments)<\/h3>\n<p>Python geli\u015ftirme yaparken en iyi uygulamalardan biri, her proje i\u00e7in ayr\u0131 bir sanal ortam olu\u015fturmakt\u0131r. Sanal ortamlar, projelerinizin ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 sistem genelindeki Python kurulumundan izole etmenizi sa\u011flar. Bu, farkl\u0131 projelerin farkl\u0131 Python paket s\u00fcr\u00fcmlerine ihtiya\u00e7 duydu\u011funda \u00e7ak\u0131\u015fmalar\u0131 \u00f6nler.<\/p>\n<h4>Neden Sanal Ortamlar Kullanmal\u0131y\u0131z?<\/h4>\n<ul>\n<li><strong>Ba\u011f\u0131ml\u0131l\u0131k \u0130zolasyonu:<\/strong> Her projenin kendi ba\u011f\u0131ml\u0131l\u0131k k\u00fcmesi vard\u0131r. Sanal ortamlar, bir projenin ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131n di\u011fer projeleri veya sistemin kendisini etkilemesini engeller.<\/li>\n<li><strong>\u00c7ak\u0131\u015fmalar\u0131 \u00d6nleme:<\/strong> Farkl\u0131 projeler ayn\u0131 paketin farkl\u0131 s\u00fcr\u00fcmlerini gerektirebilir. Sanal ortamlar sayesinde, her proje kendi ba\u011f\u0131ml\u0131l\u0131k s\u00fcr\u00fcm\u00fcne sahip olabilir.<\/li>\n<li><strong>Temiz Geli\u015ftirme Ortam\u0131:<\/strong> Sistem genelindeki Python kurulumunuzu gereksiz paketlerle doldurmaktan ka\u00e7\u0131n\u0131r.<\/li>\n<li><strong>Kolay Payla\u015f\u0131m:<\/strong> Projenizin ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 <code>requirements.txt<\/code> dosyas\u0131yla kolayca payla\u015fabilir, b\u00f6ylece di\u011fer geli\u015ftiriciler veya da\u011f\u0131t\u0131m ortamlar\u0131 projenizi sorunsuz bir \u015fekilde kurabilir.<\/li>\n<\/ul>\n<h4>Venv ile Sanal Ortam Olu\u015fturma<\/h4>\n<p>Python 3.3 ve sonraki s\u00fcr\u00fcmlerle birlikte gelen <code>venv<\/code> mod\u00fcl\u00fc, sanal ortamlar olu\u015fturmak i\u00e7in \u00f6nerilen yerle\u015fik bir ara\u00e7t\u0131r. Harici bir paket kurmaya gerek kalmadan kullan\u0131labilir.<\/p>\n<h5>Sanal Ortam Olu\u015fturma Ad\u0131mlar\u0131<\/h5>\n<p>Bir proje dizini olu\u015fturun ve i\u00e7ine gidin:<\/p>\n<pre><code class=\"language-bash\">mkdir my_python_project\ncd my_python_project<\/code><\/pre>\n<p>\u015eimdi, projeniz i\u00e7in bir sanal ortam olu\u015fturun. Genellikle sanal ortam dizinine <code>venv<\/code> veya <code>.venv<\/code> gibi bir isim verilir. Kullanmak istedi\u011finiz Python s\u00fcr\u00fcm\u00fcn\u00fc (\u00f6rne\u011fin, <code>python3.8<\/code> veya <code>python3.10<\/code>) belirtmeniz \u00f6nemlidir:<\/p>\n<pre><code class=\"language-bash\">python3.8 -m venv venv_project_name<\/code><\/pre>\n<p>Bu komut, <code>venv_project_name<\/code> ad\u0131nda yeni bir dizin olu\u015fturacak ve bu dizinin i\u00e7ine izole edilmi\u015f bir Python kopyas\u0131, PIP ve di\u011fer yard\u0131mc\u0131 betikleri yerle\u015ftirecektir.<\/p>\n<h5>Sanal Ortam\u0131 Aktifle\u015ftirme<\/h5>\n<p>Sanal ortam\u0131 kullanmaya ba\u015flamak i\u00e7in onu aktifle\u015ftirmeniz gerekir:<\/p>\n<pre><code class=\"language-bash\">source venv_project_name\/bin\/activate<\/code><\/pre>\n<p>Terminal istemciniz de\u011fi\u015ferek sanal ortam\u0131n ad\u0131n\u0131 i\u00e7ermelidir (\u00f6rne\u011fin, <code>(venv_project_name) user@ubuntu:~\/my_python_project$<\/code>). Bu, sanal ortam\u0131n aktif oldu\u011funu ve art\u0131k <code>python<\/code> ve <code>pip<\/code> komutlar\u0131n\u0131n bu sanal ortam\u0131n Python kopyas\u0131n\u0131 ve PIP&#8217;ini i\u015faret etti\u011fini g\u00f6sterir.<\/p>\n<p>Aktif sanal ortamda Python ve PIP s\u00fcr\u00fcmlerini kontrol edin:<\/p>\n<pre><code class=\"language-bash\">python --version\npip --version<\/code><\/pre>\n<p>Bu komutlar, sanal ortam\u0131 olu\u015ftururken belirtti\u011finiz Python s\u00fcr\u00fcm\u00fcn\u00fc ve ona ait PIP&#8217;i g\u00f6stermelidir.<\/p>\n<h5>Paket Kurulumu ve Y\u00f6netimi<\/h5>\n<p>Sanal ortam aktifken, PIP kullanarak paketleri kurabilirsiniz. \u00d6rne\u011fin, pop\u00fcler bir web \u00e7er\u00e7evesi olan Flask&#8217;\u0131 kural\u0131m:<\/p>\n<pre><code class=\"language-bash\">pip install Flask<\/code><\/pre>\n<p>Bu komut, Flask&#8217;\u0131 ve t\u00fcm ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 <em>sadece bu sanal ortam\u0131n i\u00e7ine<\/em> kurar, sistem genelindeki Python kurulumunu etkilemez.<\/p>\n<p>Y\u00fckl\u00fc paketleri listelemek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">pip list<\/code><\/pre>\n<p>Projenizin ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 bir <code>requirements.txt<\/code> dosyas\u0131na kaydetmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">pip freeze > requirements.txt<\/code><\/pre>\n<p>Ba\u015fka bir geli\u015ftirici veya farkl\u0131 bir ortamda bu ba\u011f\u0131ml\u0131l\u0131klar\u0131 kurmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">pip install -r requirements.txt<\/code><\/pre>\n<h5>Sanal Ortamdan \u00c7\u0131kma<\/h5>\n<p>Sanal ortamdan \u00e7\u0131kmak ve sistem genelindeki Python kurulumuna geri d\u00f6nmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">deactivate<\/code><\/pre>\n<p>Terminal istemciniz eski haline d\u00f6necektir.<\/p>\n<h4>Virtualenv ile Sanal Ortam Olu\u015fturma (Alternatif Y\u00f6ntem)<\/h4>\n<p><code>virtualenv<\/code>, <code>venv<\/code>&#8216;den \u00f6nce pop\u00fcler olan \u00fc\u00e7\u00fcnc\u00fc taraf bir ara\u00e7t\u0131r. Python 2 projeleri i\u00e7in hala gerekli olabilir veya baz\u0131 geli\u015ftiriciler taraf\u0131ndan tercih edilebilir. Ancak Python 3 i\u00e7in <code>venv<\/code> genellikle yeterlidir.<\/p>\n<h5>Virtualenv Kurulumu<\/h5>\n<p><code>virtualenv<\/code>&#8216;i kurmak i\u00e7in PIP&#8217;i kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">pip3 install virtualenv<\/code><\/pre>\n<p>E\u011fer belirli bir Python s\u00fcr\u00fcm\u00fc i\u00e7in kuruyorsan\u0131z (\u00f6rne\u011fin, Python 3.10), o Python s\u00fcr\u00fcm\u00fcn\u00fcn PIP&#8217;ini kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">pip3.10 install virtualenv<\/code><\/pre>\n<h5>Sanal Ortam Olu\u015fturma ve Kullanma<\/h5>\n<p>Bir sanal ortam olu\u015fturmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">virtualenv venv_project_name<\/code><\/pre>\n<p>Belirli bir Python s\u00fcr\u00fcm\u00fcn\u00fc kullanmak i\u00e7in (\u00f6rne\u011fin, Python 3.10):<\/p>\n<pre><code class=\"language-bash\">virtualenv -p python3.10 venv_project_name<\/code><\/pre>\n<p>Aktifle\u015ftirme ve devre d\u0131\u015f\u0131 b\u0131rakma ad\u0131mlar\u0131 <code>venv<\/code> ile ayn\u0131d\u0131r:<\/p>\n<pre><code class=\"language-bash\">source venv_project_name\/bin\/activate\n<h2>... paket kurulumu ve geli\u015ftirme ...<\/h2>\ndeactivate<\/code><\/pre>\n<h3>Geli\u015ftirme Ortam\u0131 \u0130\u00e7in Faydal\u0131 Ara\u00e7lar ve \u0130pu\u00e7lar\u0131<\/h3>\n<p>Verimli bir Python geli\u015ftirme ortam\u0131 sadece Python ve sanal ortamlar\u0131 kurmaktan ibaret de\u011fildir. \u0130\u015f ak\u0131\u015f\u0131n\u0131z\u0131 kolayla\u015ft\u0131racak ve kod kalitesini art\u0131racak ek ara\u00e7lar da vard\u0131r.<\/p>\n<h4>Kod Edit\u00f6rleri ve IDE&#8217;ler (VS Code, PyCharm)<\/h4>\n<ul>\n<li><strong>Visual Studio Code (VS Code):<\/strong> Hafif, h\u0131zl\u0131 ve olduk\u00e7a \u00f6zelle\u015ftirilebilir bir kod edit\u00f6r\u00fcd\u00fcr. Python uzant\u0131s\u0131 ile m\u00fckemmel Python deste\u011fi sunar (intellisense, hata ay\u0131klama, sanal ortam entegrasyonu).<\/li>\n<li><strong>PyCharm:<\/strong> JetBrains taraf\u0131ndan geli\u015ftirilen, Python i\u00e7in \u00f6zel olarak tasarlanm\u0131\u015f g\u00fc\u00e7l\u00fc bir Entegre Geli\u015ftirme Ortam\u0131 (IDE). Profesyonel s\u00fcr\u00fcm\u00fc \u00fccretli olsa da, topluluk s\u00fcr\u00fcm\u00fc (Community Edition) \u00fccretsizdir ve bir\u00e7ok geli\u015ftirici i\u00e7in yeterlidir.<\/li>\n<li><strong>Sublime Text \/ Atom:<\/strong> Di\u011fer pop\u00fcler ve \u00f6zelle\u015ftirilebilir metin edit\u00f6rleridir.<\/li>\n<\/ul>\n<h4>Git Kurulumu ve Kullan\u0131m\u0131<\/h4>\n<p>Versiyon kontrol sistemi olarak Git, modern yaz\u0131l\u0131m geli\u015ftirmede vazge\u00e7ilmezdir. Projelerinizin ge\u00e7mi\u015fini takip etmek, i\u015fbirli\u011fi yapmak ve kodunuzu g\u00fcvenli bir \u015fekilde y\u00f6netmek i\u00e7in kullan\u0131l\u0131r.<\/p>\n<p>Git&#8217;i kurmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo apt install git -y<\/code><\/pre>\n<p>Kurulumdan sonra, kullan\u0131c\u0131 ad\u0131n\u0131z\u0131 ve e-posta adresinizi ayarlay\u0131n:<\/p>\n<pre><code class=\"language-bash\">git config --global user.name \"Ad\u0131n\u0131z Soyad\u0131n\u0131z\"\ngit config --global user.email \"email@example.com\"<\/code><\/pre>\n<p>Yeni bir Git deposu ba\u015flatmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">git init<\/code><\/pre>\n<p>Uzaktaki bir depoyu klonlamak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">git clone <depo_url><\/code><\/pre>\n<h4>Python Linter ve Formatter&#8217;lar (Flake8, Black)<\/h4>\n<ul>\n<li><strong>Flake8:<\/strong> Python kodunuzdaki stil hatalar\u0131n\u0131 (PEP 8 uyumsuzluklar\u0131) ve potansiyel hatalar\u0131 kontrol eden bir linterd\u0131r. Kod kalitesini art\u0131rmak i\u00e7in \u00f6nemlidir.\n<pre><code class=\"language-bash\">pip install flake8<\/code><\/pre>\n<pre><code class=\"language-bash\">flake8 your_project_folder\/<\/code><\/pre>\n<\/li>\n<li><strong>Black:<\/strong> Otomatik bir kod bi\u00e7imlendiricidir. Kodunuzu PEP 8 standartlar\u0131na g\u00f6re otomatik olarak bi\u00e7imlendirir, b\u00f6ylece stil tart\u0131\u015fmalar\u0131n\u0131 ortadan kald\u0131r\u0131r ve tutarl\u0131 bir kod taban\u0131 sa\u011flar.\n<pre><code class=\"language-bash\">pip install black<\/code><\/pre>\n<pre><code class=\"language-bash\">black your_python_file.py<\/code><\/pre>\n<\/li>\n<\/ul>\n<h4>Jupyter Notebook (\u0130ste\u011fe Ba\u011fl\u0131)<\/h4>\n<p>Veri bilimi, makine \u00f6\u011frenimi ve etkile\u015fimli hesaplamalar i\u00e7in Jupyter Notebook veya JupyterLab pop\u00fcler ara\u00e7lard\u0131r. Kodunuzu, \u00e7\u0131kt\u0131lar\u0131 ve a\u00e7\u0131klamalar\u0131 tek bir belgede birle\u015ftirmenizi sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">pip install jupyter<\/code><\/pre>\n<p>Kurulduktan sonra, bir Jupyter Notebook sunucusu ba\u015flatmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">jupyter notebook<\/code><\/pre>\n<p>Bu, taray\u0131c\u0131n\u0131zda bir Jupyter aray\u00fcz\u00fc a\u00e7acakt\u0131r.<\/p>\n<h3>Yayg\u0131n Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/h3>\n<p>Python kurulumu ve ortam kurulumu s\u0131ras\u0131nda kar\u015f\u0131la\u015fabilece\u011finiz baz\u0131 yayg\u0131n sorunlar ve bunlar\u0131n \u00e7\u00f6z\u00fcmleri:<\/p>\n<h4>PIP Kurulum Sorunlar\u0131<\/h4>\n<ul>\n<li><strong>PIP komutu bulunamad\u0131:<\/strong> E\u011fer <code>pip<\/code> veya <code>pip3<\/code> komutu bulunamazsa, PIP&#8217;in do\u011fru \u015fekilde kurulmad\u0131\u011f\u0131 veya PATH de\u011fi\u015fkeninde olmad\u0131\u011f\u0131 anlam\u0131na gelebilir.\n<ul>\n<li>E\u011fer Ubuntu&#8217;nun depolar\u0131ndan kurduysan\u0131z, <code>sudo apt install python3-pip<\/code> komutunun \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun.<\/li>\n<li>E\u011fer yeni bir Python s\u00fcr\u00fcm\u00fc kurduysan\u0131z (PPA veya kaynak koddan), o s\u00fcr\u00fcme \u00f6zel PIP&#8217;i (\u00f6rne\u011fin <code>pip3.10<\/code>) kullanmaya veya onu kurmaya dikkat edin.<\/li>\n<li>Sanal ortam aktifken, <code>pip<\/code> komutu otomatik olarak o ortama ait PIP&#8217;i kullanmal\u0131d\u0131r.<\/li>\n<\/ul>\n<\/li>\n<li><strong>\u0130zin Hatalar\u0131 (Permission Denied):<\/strong> E\u011fer <code>pip install<\/code> komutunu sanal ortam d\u0131\u015f\u0131nda ve <code>sudo<\/code> kullanmadan \u00e7al\u0131\u015ft\u0131r\u0131rsan\u0131z, izin hatalar\u0131 alabilirsiniz. PIP&#8217;i global olarak kurmak genellikle \u00f6nerilmez. Her zaman sanal ortam i\u00e7inde <code>pip install<\/code> kullan\u0131n veya global kurulum i\u00e7in <code>sudo<\/code> kullanman\u0131z gerekiyorsa <code>sudo -H pip3 install <paket><\/code> gibi yap\u0131n (ancak bu, sanal ortamlar\u0131n amac\u0131na ayk\u0131r\u0131d\u0131r).<\/li>\n<\/ul>\n<h4>PATH De\u011fi\u015fkeni Sorunlar\u0131<\/h4>\n<p><code>python<\/code> veya <code>pip<\/code> gibi komutlar\u0131 \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda &#8220;command not found&#8221; hatas\u0131 al\u0131yorsan\u0131z, bu komutlar\u0131n bulundu\u011fu dizin PATH ortam de\u011fi\u015fkeninizde tan\u0131ml\u0131 olmayabilir. Sanal ortamlar bu sorunu b\u00fcy\u00fck \u00f6l\u00e7\u00fcde \u00e7\u00f6zer, \u00e7\u00fcnk\u00fc aktifle\u015ftirildiklerinde PATH de\u011fi\u015fkenini otomatik olarak g\u00fcncellerler.<\/p>\n<p>Manuel olarak bir komutu \u00e7al\u0131\u015ft\u0131rmak i\u00e7in tam yolunu belirtmeniz gerekebilir (\u00f6rne\u011fin, <code>\/usr\/bin\/python3.10<\/code>). E\u011fer kal\u0131c\u0131 olarak bir PATH de\u011fi\u015fikli\u011fi yapmak istiyorsan\u0131z, <code>~\/.bashrc<\/code> veya <code>~\/.profile<\/code> dosyan\u0131z\u0131 d\u00fczenleyebilirsiniz. Ancak bu, genellikle sadece belirli durumlarda (\u00f6rne\u011fin, kaynak koddan kurulan Python i\u00e7in) \u00f6nerilir ve dikkatli yap\u0131lmal\u0131d\u0131r.<\/p>\n<h4>Farkl\u0131 Python S\u00fcr\u00fcmleri Aras\u0131nda Ge\u00e7i\u015f<\/h4>\n<p>Birden fazla Python s\u00fcr\u00fcm\u00fc y\u00fckl\u00fc oldu\u011funda, hangi s\u00fcr\u00fcm\u00fcn kullan\u0131laca\u011f\u0131n\u0131 kar\u0131\u015ft\u0131rmak yayg\u0131n bir durumdur.<\/p>\n<ul>\n<li><strong>Sanal Ortamlar:<\/strong> En iyi \u00e7\u00f6z\u00fcm, her proje i\u00e7in ayr\u0131 sanal ortamlar kullanmakt\u0131r. Sanal ortam\u0131 olu\u015ftururken hangi Python s\u00fcr\u00fcm\u00fcn\u00fc kullanaca\u011f\u0131n\u0131z\u0131 belirtin (\u00f6rne\u011fin, <code>python3.10 -m venv myenv<\/code>).<\/li>\n<li><strong>S\u00fcr\u00fcm Belirtme:<\/strong> Komutlar\u0131 \u00e7al\u0131\u015ft\u0131r\u0131rken a\u00e7\u0131k\u00e7a s\u00fcr\u00fcm\u00fc belirtin (\u00f6rne\u011fin, <code>python3.8 my_script.py<\/code> veya <code>python3.10 my_script.py<\/code>).<\/li>\n<li><strong><code>update-alternatives<\/code>:<\/strong> E\u011fer sistem genelinde varsay\u0131lan Python 3 s\u00fcr\u00fcm\u00fcn\u00fc de\u011fi\u015ftirmek istiyorsan\u0131z, daha \u00f6nce bahsedilen <code>sudo update-alternatives --config python3<\/code> komutunu kullanabilirsiniz. Ancak bu, sistemin kararl\u0131l\u0131\u011f\u0131n\u0131 etkileyebilece\u011fi i\u00e7in dikkatli kullan\u0131lmal\u0131d\u0131r.<\/li>\n<\/ul>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu makalede, Ubuntu 20.04 \u00fczerinde Python 3&#8217;\u00fc kurman\u0131n \u00e7e\u015fitli yollar\u0131n\u0131 ve projeleriniz i\u00e7in izole edilmi\u015f, verimli bir geli\u015ftirme ortam\u0131 olu\u015fturmak amac\u0131yla sanal ortamlar\u0131 nas\u0131l kullanaca\u011f\u0131n\u0131z\u0131 detayl\u0131 bir \u015fekilde ele ald\u0131k. Ubuntu&#8217;nun resmi depolar\u0131ndan Python 3.8&#8217;i kurmaktan, Deadsnakes PPA arac\u0131l\u0131\u011f\u0131yla daha yeni s\u00fcr\u00fcmleri edinmeye ve hatta kaynak koddan derlemeye kadar farkl\u0131 y\u00f6ntemleri inceledik.<\/p>\n<p>Unutmay\u0131n ki, Python geli\u015ftirme s\u00fcrecinde sanal ortamlar\u0131n kullan\u0131m\u0131 kritik \u00f6neme sahiptir. Bu, ba\u011f\u0131ml\u0131l\u0131k \u00e7ak\u0131\u015fmalar\u0131n\u0131 \u00f6nler, sisteminizi temiz tutar ve projelerinizin ta\u015f\u0131nabilirli\u011fini art\u0131r\u0131r. Ayr\u0131ca, Git, kod edit\u00f6rleri ve linter\/formatter gibi ek ara\u00e7lar, geli\u015ftirme deneyiminizi daha da zenginle\u015ftirecek ve kod kalitenizi art\u0131racakt\u0131r.<\/p>\n<p>Art\u0131k Ubuntu 20.04 \u00fczerinde sa\u011flam bir Python 3 geli\u015ftirme ortam\u0131na sahipsiniz. Bu bilgiyle, Python&#8217;\u0131n sundu\u011fu geni\u015f imkanlardan faydalanarak projelerinizi g\u00fcvenle geli\u015ftirmeye ba\u015flayabilirsiniz. \u0130yi kodlamalar!<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu\nPython, g\u00fcn\u00fcm\u00fcz\u00fcn en pop\u00fcler ve \u00e7ok y\u00f6nl\u00fc programlama dillerin","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":[1468],"tags":[],"class_list":{"0":"post-38313","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-ubuntu","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 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu - 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-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu\" \/>\n<meta property=\"og:description\" content=\"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu Python, g\u00fcn\u00fcm\u00fcz\u00fcn en pop\u00fcler ve \u00e7ok y\u00f6nl\u00fc programlama dillerin\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-28T11:40:50+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-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu\",\"datePublished\":\"2026-01-28T11:40:50+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/\"},\"wordCount\":3113,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Ubuntu\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/\",\"name\":\"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-01-28T11:40:50+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu\"}]},{\"@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 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu - 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-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/","og_locale":"tr_TR","og_type":"article","og_title":"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu","og_description":"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu Python, g\u00fcn\u00fcm\u00fcz\u00fcn en pop\u00fcler ve \u00e7ok y\u00f6nl\u00fc programlama dillerin","og_url":"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-01-28T11:40:50+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-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu","datePublished":"2026-01-28T11:40:50+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/"},"wordCount":3113,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Ubuntu"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/","url":"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/","name":"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-01-28T11:40:50+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/python-3-kurulumu-ve-ubuntu-20-04-uzerinde-yerel-programlama-ortami-kurulumu\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Python 3 Kurulumu ve Ubuntu 20.04 \u00dczerinde Yerel Programlama Ortam\u0131 Kurulumu"}]},{"@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\/38313","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=38313"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38313\/revisions"}],"predecessor-version":[{"id":38314,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38313\/revisions\/38314"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=38313"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=38313"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=38313"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}