İçeriğe geç

Python Terminal Çıktılarını Biçimlendirme

Daha önce yazdığım Python Grafik Arayüzleri konusunda belirttiğim üzere Python ile daha çok  terminal (konsol) tabanlı programlar geliştiriliyor. Tabi ki bu terminal demek üzerinde geliştirilen programların tek tip çıktı vermesi demek değil. Terminal üzerinde de yazdığınız programları biçimlendirebilir göze daha hoş gelmesini sağlayabilirsiniz. Bu yazıda biçimlendirme adına 3 temel konu işlenecek.

  1. Çıktıları Renklendirme
  2. Çıktıları Biçimlendirme (Kalın, İtalik, Altı Çizili)
  3. Görünmez Yazı Girişi (Şifre Girişi)

Renklendirme ve biçimlendirme Windows terminal (cmd) üzerinde işe yaramayacaktır ancak görünmez yazı girişini Windows için de anlatacağım. Biçimlendirme işlemleri için bir string yapısı kullanmaktayız.

Biçimlendirme Yapısı:  \033[*m  (Yıldız yerine ilgili biçimin sayısal kodu gelecek)
Biçim Sayısal Kod Aralığı: 0-8 / 30-47 / 90-107
Biçim Sıfırlama Yapısı:  \033[0m

Yapıda belirttiğimiz yıldız yerine alt satırda ki kod aralıklarını kullanarak biçimlendirme işlemini yapabilirsiniz. Aşağıda ki renk skalasına bakarak hangi kodun hangi renk ve biçime ait olduğunu görebilirsiniz.

Burada anlayacağınız üzere bu kod stringin yani karakter dizisinin başına eklenerek biçimlendirmeyi başlatır. Biçim kodunun değeri 0 olursa varsayılana döner ve biçimlendirme sonlanır.

Şimdi İsmimi Yeşil, sloganımı normal bir şekilde ekrana bastıracak kodu yazalım (Yunus Emre Geldegül | Öylesine Biri İşte).

Fark ettiğiniz üzere normal karakter dizisini birleştirir gibi birleştirdik. Diğer içerisine de yazabilirdik ancak anlaşılabilir olması için bu yolu seçtik. Açıkçası böylede oldukça karışık görünüyor.

Bir diğer konu ise şifre girişi. Malum terminalde bir işlem yaparken yönetici hakları gerekiyorsa şifre ister. Girilen şifre, yazılırken ekranda görünmez. bu tür durumlarda getpass modülünün yine aynı isimde ki getpass fonksiyonunu kullanıyoruz.

Görüldüğü üzere şifreyi girdiğim halde karakterler ekrana dökülmedi, ancak değişkene aktarıldı.

Windows ortamlarda ise yine getpass modülünün win_getpass fonksiyonunu kullanabilirsiniz.

Bu kod Windows ortamında çalışacaktır.

Sizler için yararlı olduğunu düşündüğüm bir yazı oldu. Faydalı olması dileklerim ile, kolay gelsin.

Tarih:Genel ProgramlamaPython ProgramlamaLinux Sistemler

İlk Yorumu Siz Yapın

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir