Bir dosya indirdiğinizde veya bir oyuna başladığınızda, tamamlanana kadar kendini güncelleyen estetik bir animasyon görürsünüz. Bu bir ilerleme çubuğudur. İlerleme çubuğu, dosya indirme, karşıya yükleme veya aktarma gibi bir görevin ilerlemesini görselleştirmek için kullanılan grafiksel bir öğedir.
İki tür ilerleme çubuğu vardır: belirli ve belirsiz. Belirli ilerleme çubukları, bir görevin zaman içindeki ilerlemesini izler. Belirsiz ilerleme çubukları, döngüsel bir animasyonla sonsuza kadar çalışır.
Peki, bir Python CLI programında nasıl belirli bir ilerleme çubuğu oluşturabilirsiniz?
tqdm Modülü Nedir?
tqdm, öncelikle Casper da Costa-Luis ve diğer on üye tarafından sağlanan bir modüldür. tqdm, "ilerleme" anlamına gelen Arapça taqaddum kelimesinden türemiştir ve İspanyolca'da "seni çok seviyorum"un kısaltmasıdır (te quiero demasiado).
tqdm modülünü kullanarak doğrudan terminalinizde çekici, işlevsel bir ilerleme çubuğu oluşturabilirsiniz. tqdm modülünü kurmak için terminalinizi açın ve şunu çalıştırın:
bip düzenlemek tqdm
Zaman Modülü Nedir?
Python'un standart yardımcı program modülü şunları içerir: zaman modülü varsayılan olarak, yani yüklemeniz gerekmez. Barın ilerlemesini görselleştirmeye yardımcı olacak uygulamalarınıza gecikme eklemek için zaman modülünde sağlanan uyku işlevini kullanabilirsiniz.
Tarih ve saati almak, görevleri planlamak ve kullanışlı uygulamalar oluşturmak için zaman modülünü kullanabilirsiniz. basit çalar saatveya bir kronometre.
İlerleme Çubuğu Nasıl Eklenir ve Özelleştirilir
Varsayılan ilerleme çubuğunun kullanımı kolaydır ve onu çeşitli seçeneklerle özelleştirebilirsiniz.
1. Basit İlerleme Çubuğu
tqdm modülünden tqdm sınıfını ve time modülünden uyku işlevini içe aktararak basit bir ilerleme çubuğu oluşturabilirsiniz. Bir for döngüsü kullanın ve tqdm'yi istediğiniz aralıkta yineleyin.
Aralık, 9e9'a (dokuz milyar) kadar herhangi bir şey olabilir. İlerleme çubuğunu çalışırken görselleştirebilmeniz ve görebilmeniz için bir gecikme eklemek üzere uyku işlevine saniye sayısını iletin.
Bunun gibi basit bir ilerleme çubuğu uygulayabilirsiniz:
itibaren tqdm içe aktarmak tqdm
itibaren zaman içe aktarmak uyumak
tqdm'de i için (aralık (100)):
uyumak(.1)
tqdm'yi içe aktarmak yerine, tqdm ile aralığı birleştirmek ve parametreyi doğrudan geçmek için tqdm modülünden trange'yi içe aktarabilirsiniz.
itibaren tqdm içe aktarmak garip
itibaren zaman içe aktarmak uyumak
i için turuncu (100):
uyumak(.1)
Basit bir ilerleme çubuğu oluştururken elde ettiğiniz çıktı şöyle görünür:
Bu çıktı, zamanlama istatistikleriyle birlikte ilerlemenin grafiksel ve metinsel sürümlerini içerir.
2. Açıklama Metni ile İlerleme Çubuğu
Amacını açıklamak için ilerleme çubuğuna açıklayıcı bir etiket ekleyebilirsiniz. Çift tırnak içine alınmış olarak görüntülemek istediğiniz metni iniş parametre:
tqdm'de i için (aralık (0, 10), azalan ="İlerlemek: "):
uyumak(.4)
İlerleme çubuğuyla birlikte bir açıklama metni eklediğinizde elde ettiğiniz çıktı şöyle görünür:
3. Özel Genişliğe Sahip İlerleme Çubuğu
Varsayılan olarak, ilerleme çubuğunun genişliği çıktı penceresinin boyutuna göre dinamik olarak ayarlanmıştır. yardımı ile beğeninize göre özelleştirebilirsiniz. ncols parametre.
Özelleştirilmiş genişliğe sahip bir ilerleme çubuğu şu şekilde uygulayabilirsiniz:
tqdm cinsinden i için (aralık (0, 10), ncols = 100, azalan ="İlerlemek: "):
uyumak(.1)
İlerleme çubuğunun genişliğini uzattığınızda elde ettiğiniz çıktı şöyle görünür:
4. Renk Kullanan İlerleme Çubuğu
color parametresini kullanarak ilerleme çubuğunun rengini özelleştirebilirsiniz. Bunu iki şekilde yapabilirsiniz:
- renk adı: Yeşil, siyah, camgöbeği ve daha fazlası gibi rengin adını kullanabilirsiniz.
- Onaltılık Kod:Hex kodu bir biçimdir bilgisayarın rengi sakladığı yer. Onaltılık rengi bir kare (#) ve ardından onaltılık düzende (0-9, a-f) 6 karakterle belirtebilirsiniz. #000000 onaltılık kodu siyahı, #ffffff beyazı temsil eder. Bu sayıların yoğunluğunu değiştirerek farklı renk tonları elde edersiniz. kullanabilirsiniz Google'dan Renk Seçici aracı Onaltılık Kod rengini seçip yapıştırmak için
Özelleştirilmiş renklerle bir ilerleme çubuğu şu şekilde uygulayabilirsiniz:
tqdm cinsinden i için (aralık (0, 100), color="#00ffff", azal ="İlerlemek: "):
uyumak(.1)
İlerleme çubuğunun rengini değiştirdiğinizde elde ettiğiniz çıktı:
5. Minimum Aralıklı İlerleme Çubuğu
Varsayılan ayar yerine minimum aralıklarla güncellenen bir ilerleme çubuğu oluşturabilirsiniz. 1.5 veya 2 gibi iki güncelleme arasındaki süre olarak hizmet edecek bir sayı iletebilirsiniz. Minimum aralığın varsayılan değeri 0,1'dir.
Bir ilerleme çubuğunu minimum aralıkla şu şekilde uygulayabilirsiniz:
i için tqdm (aralık (0, 100), mininterval = 2, desc ="İlerlemek: "):
uyumak(.1)
İlerleme çubuğuna minimum bir aralık belirterek elde ettiğiniz çıktı:
6. ASCII Karakterlerini Kullanan İlerleme Çubuğu
Ekranda gördüğünüz normal çubuklar yerine ASCII karakterlerini kullanarak bir ilerleme çubuğu oluşturabilirsiniz. ASCII karakterlerini kullanmak için ascii parametreyi istenen biçime getirin.
gibi bir şey kullanırsanız 12345*, aralığın sütunlarının her biri birden yıldız işaretine kadar sırayla yinelenir. Havalı ve özelleştirilebilir olsa da, gerçek uygulamalarda kullanırken kullanıcı dostu kullandığınızdan emin olun.
ASCII karakterlerini şu şekilde kullanarak bir ilerleme çubuğu uygulayabilirsiniz:
tqdm'de i için (aralık (0, 100), ascii ="12345*"):
uyumak(.1)
İlerleme çubuğunda ASCII karakterlerini kullanarak elde ettiğiniz çıktı şuna benzer:
7. Belirtilen Başlangıç Noktasını Kullanan İlerleme Çubuğu
Sıfırdan bir ilerleme çubuğu başlatmak yerine, ilerleme çubuğu için belirli bir başlangıç noktası belirleyebilirsiniz. 50 gibi bir başlangıç değeri iletin. ilk parametre.
Belirli bir başlangıç noktasını kullanarak bir ilerleme çubuğu uygulayabilirsiniz:
tqdm cinsinden i için (aralık (0, 100), başlangıç = 50, azalan ="İlerlemek: "):
uyumak(.1)
İlerleme çubuğunu belirli bir noktada başlattığınızda elde ettiğiniz çıktı:
8. Belirtilen İterasyon Sayısına Sahip İlerleme Çubuğu
Belirli sayıda yineleme çalıştıran bir ilerleme çubuğu oluşturabilirsiniz. 50000 üzerinden 500 yineleme çalıştırmak istiyorsanız, aralık olarak 500'ü ve toplam yineleme sayısı olarak 50000'i Toplam parametre.
Belirli sayıda yineleme kullanarak bir ilerleme çubuğu uygulayabilirsiniz:
tqdm cinsinden i için (aralık (0, 500), toplam = 50000, azalan ="İlerlemek: "):
uyumak(.1)
Belirli sayıda yineleme içeren bir ilerleme çubuğu kullanarak elde ettiğiniz çıktı:
İlerleme Çubuğunun Uygulamaları
Bir medya oynatıcının oynatılması veya çevrimiçi bir form aracılığıyla adımların gösterilmesi gibi çeşitli durumlarda ilerleme çubukları göreceksiniz.
Bir ilerleme çubuğu estetik görünse de, yokluğunda web sitesini terk edecekleri kullanıcıya geri bildirim sağlama konusunda önemli bir iş yapar.