Python obsługuje różne techniki zapętlania dzięki pewnym wbudowanym funkcjom w różnych sekwencyjnych kontenerach. Metody te są przede wszystkim bardzo przydatne w programowaniu konkurencyjnym, a także w różnych projektach wymagających określonej techniki z pętlami utrzymującymi ogólną strukturę kodu. Oszczędza się dużo czasu i miejsca w pamięci, ponieważ nie ma potrzeby deklarowania dodatkowych zmiennych, które deklarujemy w tradycyjnym podejściu do pętli.
Gdzie są używane?
Różne techniki zapętlania są przydatne przede wszystkim w miejscach, w których nie musimy faktycznie manipulować strukturą i porządkiem ogólnych kontenerów, a jedynie drukować elementy dla instancji jednorazowego użytku, w kontenerze nie zachodzą żadne zmiany na miejscu. Można to również wykorzystać w przypadkach, aby zaoszczędzić czas.
Różne techniki zapętlania wykorzystujące struktury danych Pythona to:
Sposób 1: Używanie enumerate(): enumerate() służy do przeglądania kontenerów wyświetlających numer indeksu wraz z wartością obecną w tym konkretnym indeksie.
Python3
# python code to demonstrate working of enumerate() for key value in enumerate(['The' 'Big' 'Bang' 'Theory']): print(key value)
Wyjście:
nie jest równy mysql
0 ThePython3
1 Big
2 Bang
3 Theory
# python code to demonstrate working of enumerate() for key value in enumerate(['Geeks' 'for' 'Geeks' 'is' 'the' 'Best' 'Coding' 'Platform']): print(value end=' ')
Wyjście:
Geeks for Geeks is the Best Coding Platform Sposób 2: Używanie zip(): zip() służy do łączenia 2 lub więcej kontenerów i drukowania wartości sekwencyjnie. Pętla istnieje tylko do momentu zakończenia mniejszego pojemnika. Można znaleźć szczegółowe wyjaśnienie funkcji zip() i enumerate(). Tutaj .
Przykład 1: Dwa różne typy danych (listtuple)
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()
Wyjście
('Name: ' 'Deep') ('Age: ' 24) () ('Name: ' 'Sachin') ('Age: ' 27) () ('Name: ' 'Simran') ('Age: ' 25) () Przykład 2: Dwie podobne listy-listy typów danych
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))
Wyjście:
What is your name? I am apple.
What is your color? I am red.
What is your shape? I am a circle.
Sposób 3: Używanie iteritem(): iteritems() służy do przeglądania słownika w pętli, wyświetlając sekwencyjnie parę klucz-wartość słownika, która jest używana przed wersją Pythona 3.
Sposób 4: Używanie przedmiotów(): items() wykonuje w słowniku podobne zadanie jak iteritems(), ale ma pewne wady w porównaniu z iteritems().
modulacja amplitudy
- To jest bardzo czasochłonne . Wywoływanie tego w dużych słownikach zajmuje sporo czasu.
- To zajmuje dużo pamięci . Czasami zajmuje dwukrotnie więcej pamięci, gdy jest wywoływane w słowniku.
Przykład 1:
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)
Wyjście:
The key value pair using iteritems is :
geeks for
only geeks
Przykład 2:
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)
Wyjście
Ashoka The Great Chandragupta The Maurya Modi The Changer
Sposób 5: Używanie sortowanej(): sorted() służy do drukowania kontener jest posortowany . To nie sortuje kontenera ale po prostu drukuje kontener w posortowanej kolejności dla 1 instancji. Użycie set() można połączyć, aby usunąć duplikat zdarzenia.
wiosenny mvc
Przykład 1:
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=' ')
Wyjście:
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
Przykład 2:
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)
Wyjście:
apple
banana
grape
guava
guave
orange
pear
Sposób 6: Używanie odwróconej(): Reversed() służy do drukowania wartości the pojemnik w odwrotnej kolejności . Nie odzwierciedla żadnych zmian w stosunku do pierwotnej listy
Przykład 1:
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=' ')
Wyjście:
The list in reversed order is :
3 1 2 6 5 3 1
Przykład 2:
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)
Wyjście:
7
4
1
- Techniki te są szybkie w użyciu i zmniejszają wysiłek związany z kodowaniem. for while wymaga zmiany całej struktury kontenera.
- Te techniki zapętlania nie wymagają żadnych zmian konstrukcyjnych w pojemniku. Zawierają słowa kluczowe, które przedstawiają dokładny cel użycia. Podczas gdy w pętli for while nie można dokonywać żadnych wstępnych przewidywań ani domysłów, co oznacza, że nie można łatwo zrozumieć celu na pierwszy rzut oka.
- Technika zapętlania sprawia, że kod jest bardziej zwięzły niż użycie pętli for i while.
techniki zapętlania podczas używania instrukcji if:
W tym przykładzie używamy pętli while w celu zwiększenia zmiennej zwanej liczbą. Wewnątrz pętli używamy instrukcji if, aby sprawdzić, czy liczba jest równa 3. Jeśli tak, wypisujemy komunikat.
Zbliżać się:
Zainicjuj zmienną licznikową na 0
Użyj pętli while, aby wielokrotnie wykonać blok kodu, o ile liczba jest mniejsza niż 5
Wewnątrz pętli użyj instrukcji if, aby sprawdzić, czy liczba jest równa 3
Jeśli liczba wynosi 3, wydrukuj wiadomość
Na koniec każdej iteracji zwiększaj liczbę o 1
numerować alfabetPython3
# Example variable count = 0 # Loop while count is less than 5 while count < 5: if count == 3: print('Count is 3') count += 1
Wyjście
Count is 3
Złożoność czasowa: O(n), gdzie n to liczba iteracji wymaganych, aby liczba osiągnęła 5.
Przestrzeń pomocnicza: O(1), ponieważ w całym kodzie używana jest tylko jedna zmienna (liczba).
Utwórz quiz