python'da döngü için. Sözdizimi, liste yineleme, kesme, devam etme ve diğer özellikler

Цpiton i için ikl devir while – ifadeler yazılım dil, yani: iterasyon operatörleri, izining kodu tekrarla verilen numara Zaman.

Цикл için — сintaksis

Daha önce açıklandığı gibi, cdahil etme Python'a dayalı bir yineleyicidirй döngü başınakimlik. O mu eylemler tuple elemanları tarafından и listesi, kelime anahtarlar ve diğer yinelenebilir nesneler

Python'da bir döngü, for anahtar sözcüğüyle başlar, ardından verilen sıradaki bir sonraki nesnenin değerini depolayan rastgele bir değişken adı gelir. Python'da for…in için genel sözdizimi şöyle görünür:

için: başka:      

Bileşenler "diziler" listelendi birbiri ardına döngü değişkeni. Daha doğrusu, değişken noktaları böyle elementler. Herkes için Bunların “eylem” gerçekleştirilir.

Belirli bir örnekle Python'da basit bir for döngüsü:

>>> diller = ["C", "C++", "Perl", "Python"] >>> x dillerinde: ... print(x) ... C C++ Perl Python >>>

else bloğu özeldirth. Eğer bir programcıыçalışma с Perl tanıdıkы onunla, o etkileşimde bulunanlar için с C ve C++ — bu bir yenilik. anlamsal olarak fonksiyonlar тaynı şekilde döngü sırasında.

Yalnızca döngü break ifadesi tarafından "durdurulmadığında" yürütülür. Yani, yalnızca tüm öğeler belirtilen diziden geçtikten sonra yürütülür.

python'da break operatörü – break

Programda bir for döngüsü varsa gerekli kesmekthe break ifadesi, he tamamlamakgiderve program akış irade hesapolduğu olmadan etkinleştirme başkasından.

Daha sık python'da cümleleri kırmakuyutsya koşullu ifadeler ile

yenilebilir ürünler = ["pirzola", "köfte","yumurta","fındık"] yenilebilir yiyeceklerdeki yiyecekler için: if food == "köfte": print("Köfte yemem!") break print("Harika, lezzetli " + yemek) else: print("Köfte olmaması güzel!") print("Akşam yemeği bitti.")

Bu kodu çalıştırırsanız, aşağıdaki sonucu alırsınız:

Harika, lezzetli pirzola. Ben köfte yemem! Akşam yemeği bitti.

“Köfteleri” mevcut veri listesinden çıkarırız ve şunları elde ederiz:

Mükemmel, lezzetli pirzolalar Mükemmel, lezzetli yumurtalar Mükemmel, lezzetli fındıklar İyi ki köfte yoktu! Akşam yemeği bitti.

python operatörü atla - devam et

Diyelim ki kullanıcının bu tür ürünlere karşı antipatisi, tüketimini tamamen terk edecek kadar büyük değil. Sonuç olarak, döngü operatör ile devam eder. continue. Aşağıdaki komut dosyası deyimi kullanır continue, "dumpling kontağı" listesinde yinelemeye devam etmek için.

edibles = ["pirzola", "köfte","yumurta","fındık"] yenebilir yiyecekler için: if food == "köfte": print("Köfte yemem!") devam print("Harika, lezzetli " + yemek) # bu yemekten zevk almak için bir kod olabilir :-) else: print("Köfteden nefret ederim!") print("Akşam yemeği bitti.")

Alt çizgi:

Harika, lezzetli pirzola. Ben köfte yemem! Harika, lezzetli yumurtalar Harika, lezzetli fındıklar Köfteden nefret ederim! Akşam yemeği bitti.

range() işleviyle listeler üzerinde yineleme

Bir listenin dizinlerine erişmek istiyorsanız, bu amaç için bir for döngüsünün nasıl kullanılacağı açık değildir. Tüm öğelere erişmek mümkündür, ancak öğenin dizini erişilemez durumda kalacaktır. Ancak, hem öğenin dizinine hem de öğenin kendisine erişmek için bir yöntem vardır. Bu amaçla, işlev kullanılır range() uzunluk fonksiyonu ile birlikte len():

aralıktaki i için fibonacci = [0,1,1,2,3,5,8,13,21](len(fibonacci)): print(i,fibonacci[i])

Almak:

0 0 1 1 2 1 3 2 4 3 5 5 6 8 7 13 8 21

Dikkat! Uygulandığında len() к list or tuple, verilen dizinin karşılık gelen eleman sayısı elde edilir.

Listeler üzerinde yineleme yapmanın zorlukları

Bir liste üzerinde yineleme yaparken, döngü gövdesinde liste dinamiklerinden kaçınılması önerilir. Netlik için aşağıdaki seçeneği sunabiliriz:

i için renkler = ["kırmızı"] renklerde: if i == "kırmızı": renkler += ["siyah"] if i == "siyah": renkler += ["beyaz"] print(renkler)

başvururken ne olur print(colours)?

['kırmızı', 'siyah', 'beyaz']

Bunu önlemek için, aşağıdaki örnekte olduğu gibi dilimler kullanarak kopyayla etkileşime girmeniz önerilir:

renkler = ["kırmızı"] renklerde i için[:]: if i == "kırmızı": renkler += ["siyah"] if i == "siyah": renkler += ["beyaz"] print(renkler )

Sonuç:

['Kırmızı siyah']

Liste değiştirildi colours, ancak bu eylem döngüyü etkilemedi. Döngünün yürütülmesi sırasında yinelenmesi gereken veriler değişmeden kaldı.

Python 3'te numaralandır

Enumerate, yerleşik bir Python işlevidir. Yeni başlayanların çoğu ve bazı deneyimli programcılar onun varlığından haberdar değildir. Döngünün yinelemelerini otomatik olarak saymanızı sağlar. Örneğin:

sayaç için, numaralandırmadaki değer(some_list): print(counter, value)

işlev enumerate ayrıca isteğe bağlı bir argüman alır (varsayılan olarak alınan Origin değeri 0). Bu da onu daha da verimli kılıyor.

my_list = ['elma', 'muz', 'kiraz', 'şeftali'] c için, numaralandırmadaki değer(benim_listem, 1): print(c, değer) # Sonuç: # 1 elma # 2 muz # 3 kiraz # 4 şeftali

Yorum bırak