logo

Ciklo kūrimo metodai Python

„Python“ palaiko įvairias kilpos technologijas, naudodamas tam tikras integruotas funkcijas įvairiuose nuosekliuose konteineriuose. Šie metodai pirmiausia yra labai naudingi konkurenciniam programavimui, taip pat įvairiuose projektuose, kuriems reikalinga specifinė technika su kilpomis, išlaikančiomis bendrą kodo struktūrą.  Sutaupoma daug laiko ir atminties vietos, nes nereikia deklaruoti papildomų kintamųjų, kuriuos deklaruojame taikant tradicinį ciklų metodą.

Kur jie naudojami?

Įvairūs kilpų keitimo būdai visų pirma naudingi tose vietose, kur mums nereikia iš tikrųjų manipuliuoti bendrų konteinerių struktūra ir tvarka, o tik spausdinti vienkartinio naudojimo egzemplioriaus elementus, sudėtiniame rodinyje nevyksta vietos pakeitimų. Tai taip pat gali būti naudojama tam tikrais atvejais, siekiant sutaupyti laiko.

Įvairūs ciklo kūrimo būdai naudojant Python duomenų struktūras yra šie:  

1 būdas: naudojant enumerate():   enumerate() naudojamas norint peržiūrėti konteinerius, spausdinančius indekso numerį kartu su tame konkrečiame indekse esančia reikšme.



Python3
# python code to demonstrate working of enumerate() for key value in enumerate(['The' 'Big' 'Bang' 'Theory']): print(key value) 

Išvestis:

heal tool gimp
0 The  
1 Big
2 Bang
3 Theory
Python3
# python code to demonstrate working of enumerate() for key value in enumerate(['Geeks' 'for' 'Geeks' 'is' 'the' 'Best' 'Coding' 'Platform']): print(value end=' ') 

Išvestis:

Geeks for Geeks is the Best Coding Platform 

2 būdas: zip():  zip() naudojamas sujungti 2 ar daugiau konteinerių, spausdinančių reikšmes nuosekliai. Kilpa egzistuoja tik iki mažesnio konteinerio pabaigos. Galima rasti išsamų zip() ir enumerate() paaiškinimą čia .

1 pavyzdys: du skirtingi duomenų tipai (sąrašas)

Python
# python code to demonstrate working of zip() names = ['Deep' 'Sachin' 'Simran'] # list ages = (24 27 25) # tuple for name age in zip(names ages): print('Name: ' name) print('Age: ' age) print() 

Išvestis
('Name: ' 'Deep') ('Age: ' 24) () ('Name: ' 'Sachin') ('Age: ' 27) () ('Name: ' 'Simran') ('Age: ' 25) () 

2 pavyzdys: du panašūs duomenų tipai sąrašas-sąrašas

Python3
# python code to demonstrate working of zip() # initializing list questions = ['name' 'colour' 'shape'] answers = ['apple' 'red' 'a circle'] # using zip() to combine two containers # and print values for question answer in zip(questions answers): print('What is your {0}? I am {1}.'.format(question answer)) 

Išvestis:

What is your name? I am apple.  
What is your color? I am red.
What is your shape? I am a circle.

3 būdas: naudojant iteritem():  iteritems() naudojamas žodyne peržiūrėti nuosekliai spausdinant žodyno rakto-reikšmių porą, kuri buvo naudojama prieš Python 3 versiją.

4 būdas: elementų naudojimas (): items() atlieka panašią užduotį žodyne kaip iteritems(), tačiau turi tam tikrų trūkumų, palyginti su iteritems().

  • Tai yra labai daug laiko . Iškviesti jį dideliuose žodynuose užima gana daug laiko.
  • Tam reikia a daug atminties . Kartais iškviečiamas žodynas užima dvigubai daugiau atminties.

1 pavyzdys:

java sinchronizuoti
Python3
# python code to demonstrate working of items() d = {'geeks': 'for' 'only': 'geeks'} # iteritems() is renamed to items() in python3 # using items to print the dictionary key-value pair print('The key value pair using items is : ') for i j in d.items(): print(i j) 

Išvestis:

The key value pair using iteritems is :   
geeks for
only geeks

2 pavyzdys:

Python3
# python code to demonstrate working of items() king = {'Ashoka': 'The Great' 'Chandragupta': 'The Maurya' 'Modi': 'The Changer'} # using items to print the dictionary key-value pair for key value in king.items(): print(key value) 

Išvestis
Ashoka The Great Chandragupta The Maurya Modi The Changer 

5 būdas: naudojant sorted():   Sorted() naudojamas spausdinti konteineris surūšiuotas . Tai nerūšiuoja konteinerio bet tik spausdina sudėtinį rodinį rūšiuota tvarka 1 atvejui. Naudojimas set() galima sujungti, kad pašalintumėte dublikatą įvykių.

1 pavyzdys:

pavasario mvc
Python3
# python code to demonstrate working of sorted() # initializing list lis = [1 3 5 6 2 1 3] # using sorted() to print the list in sorted order print('The list in sorted order is : ') for i in sorted(lis): print(i end=' ') print('r') # using sorted() and set() to print the list in sorted order # use of set() removes duplicates. print('The list in sorted order (without duplicates) is : ') for i in sorted(set(lis)): print(i end=' ') 

Išvestis:

    The li   st in sorted order is :   
1 1 2 3 3 5 6
The list in sorted order (without duplicates) is :
1 2 3 5 6

2 pavyzdys:

Python3
# python code to demonstrate working of sorted() # initializing list basket = ['guave' 'orange' 'apple' 'pear' 'guava' 'banana' 'grape'] # using sorted() and set() to print the list # in sorted order for fruit in sorted(set(basket)): print(fruit) 

Išvestis:

apple  
banana
grape
guava
guave
orange
pear

6 būdas: naudojant atvirkštinį ():  Reverse() naudojamas reikšmėms spausdinti į konteineris atvirkštine tvarka . Tai neatspindi jokių pradinio sąrašo pakeitimų

1 pavyzdys:

Python3
# python code to demonstrate working of reversed() # initializing list lis = [1 3 5 6 2 1 3] # using reversed() to print the list in reversed order print('The list in reversed order is : ') for i in reversed(lis): print(i end=' ') 

Išvestis:

The list in reversed order is :   
3 1 2 6 5 3 1

2 pavyzdys:

Python3
# python code to demonstrate working of reversed() # using reversed() to print in reverse order for i in reversed(range(1 10 3)): print(i) 

Išvestis:

7  
4
1
  • Šie metodai greitai naudojami ir sumažina kodavimo pastangas. nes nors kilpoms reikia pakeisti visą konteinerio struktūrą.
  • Šioms kilpos formavimo technikoms nereikia jokių talpyklos struktūrinių pakeitimų. Juose yra raktinių žodžių, nurodančių tikslų naudojimo tikslą. Tuo tarpu kai ciklo metu negalima numatyti jokių išankstinių nuspėjimų ar spėlioti, ty iš pirmo žvilgsnio sunku suprasti tikslą.
  • Ciklų sudarymo technika daro kodą glaustesnį, nei naudojant for & while ciklus.

ciklo kūrimo metodai, o ciklas naudojant if teiginius:

Šiame pavyzdyje mes naudojame ciklą while, kad padidintume kintamąjį, vadinamą count. Ciklo viduje naudojame if teiginį, kad patikrintume, ar skaičius lygus 3. Jei taip, išspausdiname pranešimą.

jvm

Prieiga:

Skaičiavimo kintamąjį inicijuokite iki 0
Norėdami pakartotinai vykdyti kodo bloką, naudokite ciklą, kol skaičius yra mažesnis nei 5
Ciklo viduje naudokite if teiginį, kad patikrintumėte, ar skaičius lygus 3
Jei skaičius yra 3, atspausdinkite pranešimą
Kiekvienos iteracijos pabaigoje skaičių padidinkite 1

Python3
# Example variable count = 0 # Loop while count is less than 5 while count < 5: if count == 3: print('Count is 3') count += 1 

Išvestis
Count is 3


Laiko sudėtingumas: O(n), kur n yra pakartojimų skaičius, reikalingas norint pasiekti 5.

Pagalbinė erdvė: O(1), nes visame kode naudojamas tik vienas kintamasis (skaičius).

Sukurti viktoriną