Ortam Değişkenleri¶
🌐 Yapay Zekâ ve İnsanlar Tarafından Çeviri
Bu çeviri, insanlar tarafından yönlendirilen bir yapay zekâ ile oluşturuldu. 🤝
Orijinal anlamın yanlış anlaşılması ya da kulağa doğal gelmeme gibi hatalar içerebilir. 🤖
Yapay zekâ LLM'ini daha iyi yönlendirmemize yardımcı olarak bu çeviriyi iyileştirebilirsiniz.
İpucu
"Ortam değişkenleri"nin ne olduğunu ve nasıl kullanılacağını zaten biliyorsanız, bu bölümü atlayabilirsiniz.
Ortam değişkeni (genelde "env var" olarak da anılır), Python kodunundışında,işletim sistemi seviyesinde bulunan ve Python kodunuz (veya diğer programlar) tarafından okunabilen bir değişkendir.
Ortam değişkenleri; uygulamaayarlarını yönetmek, Python’unkurulumunun bir parçası olarak konfigürasyon yapmak vb. durumlarda işe yarar.
Env Var Oluşturma ve Kullanma¶
Python’a ihtiyaç duymadan,shell (terminal) içinde ortam değişkenlerioluşturabilir ve kullanabilirsiniz:
// You could create an env var MY_NAME with$exportMY_NAME="Wade Wilson"// Then you could use it with other programs, like$echo"Hello$MY_NAME"Hello Wade Wilson// Create an env var MY_NAME$$Env:MY_NAME="Wade Wilson"// Use it with other programs, like$echo"Hello$Env:MY_NAME"Hello Wade WilsonPython’da env var Okuma¶
Ortam değişkenlerini Python’undışında (terminalde veya başka bir yöntemle) oluşturup daha sonraPython’da okuyabilirsiniz.
Örneğinmain.py adında bir dosyanız şöyle olabilir:
importosname=os.getenv("MY_NAME","World")print(f"Hello{name} from Python")İpucu
os.getenv() fonksiyonunun ikinci argümanı, bulunamadığında döndürülecek varsayılan (default) değerdir.
Verilmezse varsayılan olarakNone olur; burada varsayılan değer olarak"World" verdik.
Sonrasında bu Python programını çalıştırabilirsiniz:
// Here we don't set the env var yet$pythonmain.py// As we didn't set the env var, we get the default valueHello World from Python// But if we create an environment variable first$exportMY_NAME="Wade Wilson"// And then call the program again$pythonmain.py// Now it can read the environment variableHello Wade Wilson from Python// Here we don't set the env var yet$pythonmain.py// As we didn't set the env var, we get the default valueHello World from Python// But if we create an environment variable first$$Env:MY_NAME="Wade Wilson"// And then call the program again$pythonmain.py// Now it can read the environment variableHello Wade Wilson from PythonOrtam değişkenleri kodun dışında ayarlanabildiği, ama kod tarafından okunabildiği ve dosyalarla birlikte saklanmasının (ör.git’e commit edilmesinin) gerekmediği için, konfigürasyon veyaayarlar için sıkça kullanılır.
Ayrıca, bir ortam değişkenini yalnızcabelirli bir program çalıştırımı için oluşturabilirsiniz; bu değişken sadece o program tarafından, sadece o çalıştırma süresince kullanılabilir.
Bunu yapmak için, program komutunun hemen öncesinde ve aynı satırda tanımlayın:
// Create an env var MY_NAME in line for this program call$MY_NAME="Wade Wilson"pythonmain.py// Now it can read the environment variableHello Wade Wilson from Python// The env var no longer exists afterwards$pythonmain.pyHello World from Pythonİpucu
Bu konuyla ilgili daha fazlasınıTwelve-Factor Uygulaması: Config bölümünde okuyabilirsiniz.
Tipler ve Doğrulama¶
Bu ortam değişkenleri yalnızcametin string’lerini taşıyabilir. Çünkü Python’un dışındadırlar ve diğer programlarla, sistemin geri kalanıyla (hatta Linux, Windows, macOS gibi farklı işletim sistemleriyle) uyumlu olmak zorundadırlar.
Bu, Python’da bir ortam değişkeninden okunanher değerinstr olacağı anlamına gelir. Farklı bir tipe dönüştürme veya doğrulama işlemleri kod içinde yapılmalıdır.
Uygulamaayarlarını yönetmek için ortam değişkenlerini kullanmayı,İleri Seviye Kullanıcı Rehberi - Ayarlar ve Ortam Değişkenleri bölümünde daha detaylı öğreneceksiniz.
PATH Ortam Değişkeni¶
İşletim sistemlerinin (Linux, macOS, Windows) çalıştırılacak programları bulmak için kullandığıözel bir ortam değişkeni vardır:PATH.
PATH değişkeninin değeri uzun bir string’dir; Linux ve macOS’te dizinler iki nokta üst üste: ile, Windows’ta ise noktalı virgül; ile ayrılır.
ÖrneğinPATH ortam değişkeni şöyle görünebilir:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbinBu, sistemin şu dizinlerde program araması gerektiği anlamına gelir:
/usr/local/bin/usr/bin/bin/usr/sbin/sbin
C:\Program Files\Python312\Scripts;C:\Program Files\Python312;C:\Windows\System32Bu, sistemin şu dizinlerde program araması gerektiği anlamına gelir:
C:\Program Files\Python312\ScriptsC:\Program Files\Python312C:\Windows\System32
Terminalde birkomut yazdığınızda, işletim sistemiPATH ortam değişkeninde listelenenbu dizinlerin her birinde programıarar.
Örneğin terminaldepython yazdığınızda, işletim sistemi bu listedekiilk dizindepython adlı bir program arar.
Bulursaonu kullanır. Bulamazsadiğer dizinlerde aramaya devam eder.
Python Kurulumu vePATH’in Güncellenmesi¶
Python’u kurarken,PATH ortam değişkenini güncellemek isteyip istemediğiniz sorulabilir.
Diyelim ki Python’u kurdunuz ve/opt/custompython/bin dizinine yüklendi.
PATH ortam değişkenini güncellemeyi seçerseniz, kurulum aracı/opt/custompython/bin yolunuPATH ortam değişkenine ekler.
Şöyle görünebilir:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/custompython/binBöylece terminaldepython yazdığınızda, sistem/opt/custompython/bin (son dizin) içindeki Python programını bulur ve onu kullanır.
Diyelim ki Python’u kurdunuz veC:\opt\custompython\bin dizinine yüklendi.
PATH ortam değişkenini güncellemeyi seçerseniz, kurulum aracıC:\opt\custompython\bin yolunuPATH ortam değişkenine ekler.
C:\Program Files\Python312\Scripts;C:\Program Files\Python312;C:\Windows\System32;C:\opt\custompython\binBöylece terminaldepython yazdığınızda, sistemC:\opt\custompython\bin (son dizin) içindeki Python programını bulur ve onu kullanır.
Yani şunu yazarsanız:
$pythonSistempython programını/opt/custompython/bin içindebulur ve çalıştırır.
Bu, kabaca şunu yazmaya denktir:
$/opt/custompython/bin/pythonSistempython programınıC:\opt\custompython\bin\python içindebulur ve çalıştırır.
Bu, kabaca şunu yazmaya denktir:
$C:\opt\custompython\bin\pythonBu bilgiler,Virtual Environments konusunu öğrenirken işinize yarayacak.
Sonuç¶
Buraya kadarortam değişkenlerinin ne olduğuna ve Python’da nasıl kullanılacağına dair temel bir fikir edinmiş olmalısınız.
AyrıcaOrtam Değişkeni için Wikipedia sayfasından daha fazlasını da okuyabilirsiniz.
Çoğu zaman ortam değişkenlerinin hemen nasıl işe yarayacağı ilk bakışta çok net olmayabilir. Ancak geliştirme yaparken birçok farklı senaryoda tekrar tekrar karşınıza çıkarlar; bu yüzden bunları bilmek faydalıdır.
Örneğin bir sonraki bölümde,Virtual Environments konusunda bu bilgilere ihtiyaç duyacaksınız.







