Bu konudaki önceki yazımızda da belirttiğimiz gibi seyir Linux kullanarak Python programlama, Bir programın sürekli çalışması gerektiğinde döngülerden yararlanabiliriz. Bu döngüler, bir veya daha fazla koşul karşılandığı sürece kodun yürütülmesini tekrarlar.
Önceki yazımızda talimatların faydasını açıklamıştık. kırılma y devam ediyor.
Linux kullanarak Python programlama kursu
Şimdi bu kodun ne yaptığını detaylıca inceleyelim:
intentos = 0
Kullanıcının yaptığı geçerli giriş sayısını takip etmek için "attempts" değişkenini oluşturun. Değerini 0 olarak ayarlayın.
while intentos = 5
Bu, döngünün kesme komutuyla karşılaşmadığı sürece 5 kez çalıştırılması gerektiğini belirtiyor.
distro = input(f"Intento {intentos + 1}/5 - Escribí una distro: ")
Kullanıcıdan bir dağıtım adı girmesini ister ve bunu `distro` değişkenine atar. Kullanıcının kafasını karıştırmamak için, sayacın 0. deneme olarak göstereceği değeri 1. deneme olarak görüntüler.
if distro == ""
Kullanıcının hiçbir şey yazmadan Enter tuşuna basıp basmadığını kontrol edin.
print("No escribiste nada, no cuenta como intento.")
Kullanıcıya henüz hiçbir şey yazmadığını bildirir.
continue
Yeni denemeler eklemeden döngüyü yeniden başlatın.
intentos += 1
Kullanıcı bir şey yazarsa, sayaca bir deneme daha eklenir.
if distro == "Ubuntu"
Kullanıcının "Ubuntu" yazıp yazmadığını kontrol edin.
print(f"¡Correcto! Adivinaste en {intentos} intento(s).")
Cevabın doğru olup olmadığını ve kaç deneme gerektiğini belirtin.
break
Kullanıcı doğru cevap verdiği için döngü durdurulur.
else:
5'ten az deneme şartı artık karşılanmadığından, alternatif yöntem uygulanır.
print("¡Se acabaron los intentos! Era Ubuntu.")
Yazdırma işleminde denemelerin tükendiği ve kullanılan dağıtımın Ubuntu olduğu belirtildi.
for döngüsü
While döngüsü, bir programın belirli bir koşul sağlanana kadar tekrar etmesini istediğimizde kullanışlıdır. Ancak Örneğin, bir listenin tüm elemanlarını görüntüleyerek bir döngü çalıştırmak istiyorsak ve bu listenin değişken sayıda elemanı varsa, bu komut daha kullanışlı olacaktır. için.
Sözdizimi aşağıdaki gibidir:
for variable in secuencia
For döngüsü, liste, metin dizisi veya sayısal aralık olabilen bir dizi ile çalışır. ve dizinin tamamını baştan sona tarar, dizideki her bir öğe için aynı kod bloğunu yürütür.
Bu bir örnektir:
mola
Talimat kırılma Döngünün yürütülmesini, dizinin sonuna ulaşılmadan önce durdurur.
distribuciones = ["Ubuntu", "Debian", "Linux Mint", "Arch Linux", "Fedora"]
Dağıtımların bir listesini oluşturun.
distro_a_buscar = "Debian"
Açıklamada Debian dağıtımının tercih edileceği belirtiliyor.
for distro in distribuciones
Listedeki her bir öğeyi sırayla dağıtım değişkenine atar.
print("Buscando...")
Her arama denemesinin başında arama mesajını görüntüler.
if distro == distro_a_buscar
Aradığınız dağıtımı bulup bulmadığınızı kontrol edin.
print("Distribución encontrada:", distro)
Aranan dağıtımın bulunduğuna dair bir mesaj verir ve adını yazdırır.
break
Döngüyü durdurun.
print("Fin de la búsqueda.")
Arama tamamlandı mesajını görüntüler; aranan dağıtım bulunamasa bile aynı mesajı görüntüler.
Devam et
`continue` komutu, `while` döngüsüne benzer şekilde çalışır. Python bu komutla karşılaştığında, listedeki bir sonraki öğeye geçer ve kalan kodu yok sayar. Bu, mevcut öğe bir koşulu karşılamadığında ancak döngünün çalışmaya devam etmesini istediğimizde kullanışlıdır.
İşte bir örnek:
distros = ["Ubuntu", "Debian", "arch linux", "Fedora", "Linux Mint"]
Beş adet Linux dağıtımının listesini oluşturun. "arch linux" ifadesinin küçük harfle yazılması kasıtlıdır.
for distro in distros
Listedeki her öğeyi tek tek inceleyerek, sırayla distro değişkenine atayın.
if distro[0].islower():
Dağıtımın ilk harfinin büyük harfle yazıldığından emin olun.
print(f»'{distro}' büyük harfle başlamıyor,»)
Bu, kullanıcıya dağıtımın büyük harfle başlama koşulunu karşılamadığını ve bir sonrakine geçeceğini bildirir:
devam etmek
Koşul sağlanmadığı için döngünün bir sonraki elemanına geçilir.
print(f"* {distro}")
Büyük harfle başlama koşulunu sağlayan dağılımları yazdırın.
Aralık
`range` fonksiyonu `for` döngüsüyle birlikte kullanılır. sayı dizileri oluşturmak.
range(inicio, fin, paso)
Nerede:
- Ev: Dizinin başladığı sayı. Varsayılan değer 0'dır.
- Son: Bu, dizinin bu değeri içermeden sona erdiği sayıdır.
- Geçti: Bu, dizideki her sayı arasındaki aralıktır. Varsayılan değer 1'dir.
Diyelim ki elimizde şu talimat var:
for i in range(4):
Varsayılan olarak 0'dan başladığı ve 1 aralığını kullandığı için, talimat şu şekildedir:
print(i)
0'dan 3'e kadar olan sayıları yazdıracaktır.
Oysa döngüyü şu şekilde tanımlarsak:
for i in range(4, 10):
print(i)
4'ten 9'a kadar olan tüm sayıları gösterecektir.
Döngü devam ederken:
for i in range(3, 21, 3):
Yaparak:
print(i)
Gösterecek
3
6
9
12
15
18
Sayı dizisini azalan sırada da oluşturabiliriz:
for i in range(21, 3,- 3):
`range` fonksiyonu, bir listenin öğelerini numaralandırmak için kullanılabilir. Bu, yaklaşık olarak şöyle bir şey olabilir:
Programı detaylı olarak inceleyelim.
distros = ["Ubuntu", "Debian", "Fedora"]
Üç farklı dağıtımın listesini oluşturun.
len(distros)
Listedeki öğe sayısını belirleyin.
range(len(distros))
Listedeki öğe sayısını aralık için üst sınır olarak belirler.
for i in range(len(distros)):
Listedeki maddelerin her birini tek tek incelemeye başlayın.
print(f"{i} - {distros[i]}")
Dizin numarasını ve liste öğesini yazdırır.
Ancak bu işlem şu yöntemle daha kolay yapılabilir:
for i, distro in enumerate(distros)
Bir sonraki yazımızda Python'ın özelliklerine devam edeceğiz.