cemir_print
Python için renkli çıktı kütüphanesi: terminale yazılan mesajları okunur ve birbirinden ayırt edilebilir yapar.
cemir_print, Python'daki verileri terminalde türlerine göre renklendirerek yazdıran küçük bir kütüphane. Sözlük ve listeleri iç içe yapılarıyla birlikte girintili olarak gösteriyor ve her değerin yanına veri türünü yazıyor. 2023 yılının Ekim ayında yazdım ve PyPI'da cemir-print adıyla yayınladım.
Amaç
Hata ayıklarken bir sözlüğü ya da listeyi print() ile yazdırdığımda, özellikle iç içe yapılarda hangi değerin hangi anahtara ait olduğunu ve değerin türünü ayırt etmek zorlaşıyordu. Örneğin "35" metni ile 35 sayısı ekranda aynı görünüyor. cemir_print'i, veriyi hem yapısını hem de türünü gösterecek biçimde yazdırmak için hazırladım.
Nasıl çalışır
Kütüphanenin tek fonksiyonu ccprint. Fonksiyon, kendisine verilen verinin türüne bakıyor. Veri bir sözlükse her anahtarı sarı renkte yazıyor. Değer yine bir sözlük ya da listeyse anahtarın yanına türünü yazıp kendini bir seviye daha girintili olarak tekrar çağırıyor. Değer basit bir türse, değeri türüne ait renkle ve yanında parantez içinde türün adıyla yazıyor. Listelerde de her elemanın sıra numarası sarı renkte, eleman ise kendi türünün rengiyle gösteriliyor. İç içe yapılarda her seviye bir sekme daha içeriden başlıyor.
Renkler türlere göre sabit. Metinler yeşil, sözlükler kırmızı, listeler camgöbeği, tam sayılar mor, ondalıklı sayılar mercan, mantıksal değerler ise pembe tonunda görünüyor. Tanınmayan bir türle karşılaşıldığında ya da yazdırma sırasında bir hata oluştuğunda veri olduğu gibi print() ile yazdırılıyor.
Öne çıkan özellikler
- Her değerin yanında veri türünü gösterdiği için metin ile sayı gibi karışabilecek değerler hemen ayırt ediliyor.
- İç içe sözlük ve listeleri girintiyle göstererek yapının derinliğini görünür kılıyor.
- Tanımadığı türlerde hata vermeden normal yazdırmaya geri dönüyor.
Teknik altyapı
Kod tek bir Python dosyasından oluşuyor ve hiçbir dış bağımlılığı yok. Renkler ANSI kaçış kodlarıyla veriliyor; bu kodlar terminale metnin hangi renkte gösterileceğini söyleyen özel karakter dizileri. Paket setuptools ile hazırlandı ve MIT lisansıyla dağıtılıyor.
Durum
Kütüphane 2023 Ekim'inde birkaç gün içinde yayınlanan sürümlerden sonra güncellenmedi. Benzer bir renkli yazdırma işlevi, 2024'te yayınlanan cemirutils kütüphanesinde cprint adıyla da bulunuyor.
Kullanım alanları
- API yanıtlarını ve yapılandırma sözlüklerini incelerken yapıyı ve türleri bir arada görmek için kullanılabilir.
- Python öğrenenlere veri türleri arasındaki farkı görsel olarak göstermek için işe yarar.
- Kategori
- Python kütüphaneleri
- Yıl
- 2023
Teknolojiler
- Python
- PyPI