Linux'ta Birden Fazla Python Sürümü ile Proje Geliştirme ve Sanal Ortam Kullanımı
Python ile yazılım geliştirirken farklı projelerin farklı Python sürümleri veya kütüphane versiyonlarına ihtiyaç duyması oldukça yaygın bir durumdur. Özellikle Linux (Ubuntu) sistemlerinde Python 3.9 ve 3.12 gibi birden fazla sürüm kuruluysa, bu sürümler arasında geçiş yaparak projeyi çalıştırmak son derece kolaydır. Bu yazıda, terminal tabanlı bir yaklaşım ile Python projelerinizde nasıl profesyonel bir yapı kurabileceğinizi adım adım ele alacağız.

Python ile yazılım geliştirirken farklı projelerin farklı Python sürümleri veya kütüphane versiyonlarına ihtiyaç duyması oldukça yaygın bir durumdur. Özellikle Linux (Ubuntu) sistemlerinde Python 3.9 ve 3.12 gibi birden fazla sürüm kuruluysa, bu sürümler arasında geçiş yaparak projeyi çalıştırmak son derece kolaydır. Bu yazıda, terminal tabanlı bir yaklaşım ile Python projelerinizde nasıl profesyonel bir yapı kurabileceğinizi adım adım ele alacağız.
1. Python Sürümleri Arasında Geçiş
Linux’ta birden fazla Python sürümü kuruluysa, terminal üzerinden hangi sürümle işlem yapmak istediğinizi doğrudan belirtebilirsiniz:
python3.9 main.py # Projeyi Python 3.9 ile çalıştırır
python3.12 main.py # Projeyi Python 3.12 ile çalıştırır
Aynı şekilde kütüphane yüklerken de ilgili sürümün pip’i kullanılabilir:
python3.9 -m pip install opencv-python
python3.12 -m pip install opencv-python
2. Her Proje İçin Ayrı Sanal Ortam (Virtual Environment) Oluşturmak
Projeler arasında kütüphane çakışmalarını önlemenin en iyi yolu, her proje için ayrı bir sanal ortam oluşturmaktır. Bu sayede her proje yalnızca kendi ihtiyacı olan kütüphaneleri barındırır.
Adımlar:
a) Sanal ortam oluşturma (örneğin Python 3.9 ile):
cd ~/projelerim/ornek_proje
python3.9 -m venv venv
b) Ortamı aktifleştirme:
source venv/bin/activate
c) Kütüphane yükleme:
pip install opencv-python
d) Projeyi çalıştırma:
python main.py
Not: Sanal ortam aktifken terminal başında (venv)
ibaresi yer alır.
3. Sanal Ortamın Avantajları
-
Her projenin kendi bağımlılıkları olur, çakışma yaşanmaz.
-
Global sistem Python’una zarar verilmez.
-
Projeyi başka birine gönderdiğinizde
requirements.txt
dosyası ile aynı ortam kolayca oluşturulabilir:
pip freeze > requirements.txt
Başka bir ortamda aynı kütüphaneleri kurmak için:
pip install -r requirements.txt
4. PyCharm Zorunlu Değil: Terminal + Editör Yeterli
Pek çok geliştirici gibi siz de PyCharm veya başka bir IDE kullanmak zorunda değilsiniz. Basit ve hafif bir editör olan Sublime Text veya VS Code ile yazdığınız kodları terminalde çalıştırarak gayet profesyonel projeler geliştirebilirsiniz. Sanal ortamları terminal üzerinden yönetmek her zaman daha kontrollü ve esnektir.
Sonuç
Linux’ta Python projelerinizi sağlıklı ve sürdürülebilir bir yapıya kavuşturmanın yolu, her proje için doğru sürümü seçmek ve sanal ortamlar ile izole bir yapı kurmaktan geçiyor. Bu yaklaşım sadece sisteminizi düzenli tutmakla kalmaz, aynı zamanda projelerinizin taşınabilirliğini de artırır. Artık siz de projelerinize terminalden hâkim olabilir, sade ama etkili bir Python geliştirme ortamı kurabilirsiniz.
Ekstra İpucu: Gelişmiş Python sürüm yönetimi için pyenv
gibi araçlar da kullanılabilir. Ancak temel seviye için terminal bilgisi bu işlemler için fazlasıyla yeterlidir.
Bu Yazıya Tepkin Nedir?






