Python dili için bir çok geliştirme ortamı (development environment) desteği bulunmaktadır. Bunlardan bir kesimi düzgü eğirici (code editor) adı verilen, temel geliştirme işlemlerini içerip çok ileri düzeyde görsel araçlar içermeyen uyalamalardır. Bunlar temelde bir yazı eğirici (text editor) uygulamasını düzgü renklendirme (code colorizing) ve düzgü tümleme (code completing) gibi özellikler eklenmesiyle oluşur. Öte yandan Bütünleşik Geliştirme Çevresi (Integrated Development Environment) adı verilen, bir çok gelişmiş araç içeren uygulamalar da bulunmaktadır. Bunların bir kesiminde düzgü yazmak yerine bir takım pencerelerde tıklama yaparak geliştirme yapmak olanaklıdır.
Kimi geliştiriciler düzgü eğirici (code editor) kullanmayı yeğlerler. Çünkü temel destek onlar için yeterlidir ve karmaşık bir arayüze gerek duymazlar. Ancak düzgü eğiriciler kimi kişilerce çok yetersiz olarak algılanmaktadır. Özellikle başka bir dil için gelişmiş araçlar kullananlar için düzgü eğirici çok yetersiz kalabilmektedir. Öte yandan kimi geliştiriciler için de bütünleşik geliştirme çevresi (integrated development environment) uygulamaları gereksiz karmaşık gelebilmektedir. Geliştiriciler çok sayıda özellik arasında yitebilekte, geliştirme yapmak yerine kedilerini çevrenin bileşenlerini öğrenmekte bulabilmektedir.
Temel Araçlar
IDLE
Pyhton programlama dilinin doğal geliştirme çevresi IDLE adını taşır. Python dilini öğrenmek isteyenler için gerekli temel araçları sağlar. Ancak temel özellikler ötesinde gelişmiş özellikler içermez. İstenirse bir takım betiklikler yüklenerek gelişmiş uygulamalar geliştirilebilir ancak bu çevre, geliştirme için pek çok kolaylık içermez. IDLE çevresi, Pyhton ile çizgelemeli kullanıcı arayüzü (graphical user interface) geliştirme betikliği olan Tkinter iler geliştirilmiştir. Tkinter, işletim düzeni (operation system) çevresinden bağımsız olarak görsel arayüz geliştirilmesine olanak veren bir zımbırtı (widget) betikliğidir.
Yazı Eğiriciler (Text Editor)
Pyhton ile geliştirme yapmak için Notepad++ gibi herhangi bir yazı eğirici (text editor) kullanılabilir. Bunlar Pyhon dilin tanır ve kodları renkli gösterir. Olağan yazı eğirme özelliklerini de sağladıkları için bir çok kişi, başka diller için alıştığı bu uygulamaları Python için de kullanır. Özellikle aynı anda bir çok programlama diliyle çalışanlar bu tür genel araçları yeğlemektedirler.
IPython
Python dilinde etkileşimli (interactive) bir geliştirme yapılmasına olanak veren IPython adında bir çevre bulunmaktadır. Bu araçlar geliştirme yapmakla bir takım matematik uygulamlarının konsolunda çalışmak aynı anda yapılmaktadır. Bir parça kod yazıp çalıştırarak anında sonuç görülebilmesi sağlanmaktadır. Öte yandan buyruk çizgisi (command line) araçlarıyla çalışmayanlar için çok düşük düzeyli, kullanımı çok çetin bir araç olarak görülebilir. Doğrudan bu çevreyi kullanmak yerine, bu çevreyi içeren daha gelişmiş bir uygulama yeğlenebilir.
Pip
Python dilinin bohça yöneticisi (package manager) uygulamsına Pip adı verilir. Bir betiklik (library) indirmek için kullanılır. İndirilen betikliğin kullandığı betiklikleri de özyinelemeli (recursive) olarak indirir. Tek başına bir araç olmaktan çok başka çevrelerin altında kullanılan bir özellik olarak işlev görür. Python dilinin geliştiricilere sağladığı betikliklerin çok geniş olduğu düşünülürse, bohça yöneticinin ne denli önemli olduğu anlaşılabilir.
Gelişmiş Araçlar
Jupyter Betlek (Jupyter Betlek)
IPython çevresinin geliştirilerek betlek arayüzü (notebook interface) adı verilen yönteme uygun bir çevre sağlayan Jupyter Betlek (Jupyter Betlek) adlı bir araç geliştirilmiştir. Betlek ya da defter adı verilen uygulamalar, kağıttan oluşan defterle çalışır gibi gelişirme ya da kullanım yapmak anlamına gelir. Bir anlamda geliştirme çevresi (development environment) ile sözcük süreçleyici (word processor) arası, ikisininde özelliklerini taşıyan araçlardır. Bir çok dil ve uygulama kullanıcıların daha rahat kullanımı için bu tür araçlar sağlamaktadır. Jupyter de betlek arayüsü kavramının Python dilindeki karşılıklarıdır. Öte yandan, Pyhton dışında R ve Julia adlı veri bilimi dillerini de desteklemektedir. Uygulama geliştirmekten çok deneme yanılma yoluyla bir takım işlemleri öğrenmek için son derece uygundur. Öte yandan yapılan işlemlere ilişkin düzgü (code) parçaları saklanıp yeniden kullanılabildiği için de bir geliştirme çevresi olarak da işlev görebilir.
Spyder
Pyhton ile geliştirme yapmak için kullanılan araçlardan birisi de Spyder adını taşır. Özellikle veri bilimi (data science) ve düzenek öğrenmesi (machine learning) konularında bir çok gelişmiş araç içerir. Geliştirme çevresi çok görsel araç içermese de hazır bir çok betiklik içerdiğinden akademik ve bilim düyasında yaygın olarak kullanılır. Anaconda adı verilen bir dağıtım (distribution) içinde Pyhton ve R desteği içerir. Spyder; Numpy, Scipy, Mathplot betikliklerini ve IPython etkişleşimli bilgisayım çevresini içinde barındırır. Bunların dışında da açık kaynaklı bir çok betiklik, Spyder ile birlikte gelir.
PyCharm
Java dilinde ileri düzeyde geliştirme çevresi (development environment) sağlayan JetBrains kurumunun IntelliJ adlı Java çevresinin Pyhthon diliyle geliştirme yapmak için üretilmiş sürümüdür. Android ile geliştirme yapanların kullandığı Android Studio çevresi de IntelliJ tabanlıdır. Çoktan Java için yapılmış özelliklerin Python ortamına aktarır. Özellikle Java ve Android gelişiyirme yapanlar için tanıdıdık bir çevre sağlar. Kurmadan önce Java motorunun kurulması gerekir.
PyDev
Yine Java ile yazılmış, en yaygın kullanılan geliştirme çevrelerinden birisi olan Eclipse tabanlı bir Python çevresi olarak PyDev sayılabilir. Eclipse çevresine tanışık olan ya da dolaylı olarak da Eclipse tabanlı başka bir eğiriciyi kullananlara bu uygulama önerilir. Bu çevre için de Java motorunun kurulması gerekir.
Visual Studio için Pyhton Araçları
Microsoft kuruluşunun C# gibi dillerler .NET üzerinde geliştirme yapmak için kullanılan çevresi Visual Studio uygulamasında Visual Studio için Pyhton Araçları (Python Tools for Visual Studio) adı verilen bir eklenti kurarak Python geliştirme yapılabilir. Visual Studio hem gelişmiş hem de kullanımı kolay bir çevre sağlamaktadır. Ancak daha önce kurmamış olanlar için kurulması çok uzun sürebilmektedir. Çünkü Visual Studio, Microsoft kurumunun Windows işletim düzeni için gerekli tüm araçları kurmaktadır. Dahası, gerektiğinde işletim düzenini ya da temel uygulamaları güncelleme gibi bir durum da söz konusu olabilmektedir.
Öneri
Python ile geliştirme yapmaya başlayanları Pyhon dilinin doğal ortamı IDLE ile başlamaları önerilebilir. Öte yandan, gerçek amacı Python öğrenmenin yanında veri bilimi (data science) ve yapay us (artificial intelligence) öğrenme amacında olanlar Spyder önerilebilir. Öte yandan, verilerler çalışarak hemen sonuçları görme biçiminde çalışmak isteyenler için Jupyter çok uygun bir çözüm olarak görülmektedir. Ancak daha önce Java Girişim (Java Enterprise) için uygulama geliştirenlere ya da zamanla geliştirmek isteyenlere Eclipse tabanlı PyDev; Android Studio ile taşınabilir aygıtlar yapanlara veya yapmayı düşünenlere IntelliJ tabanlı PyCharm önerilir. C#.NET gibi Microsoft teknolojilerine tanışık olan ya da uzun dönemde bu yönde ilerlemek isteyenlere de Visual Studio için Pyhton Araçları (Python Tools for Visual Studio) önerilir. Başlangıçta Spyder gibi bir ortamla giriş yapıp sonrasında sayılan seçeneklerden birisine geçmek de izlenebilecek yollardan birisidir.