logo

Looping metodes Python

Python atbalsta dažādas cilpas metodes, izmantojot noteiktas iebūvētas funkcijas dažādos secīgos konteineros. Šīs metodes galvenokārt ir ļoti noderīgas konkurētspējīgā programmēšanā un arī dažādos projektos, kuriem nepieciešama īpaša tehnika ar cilpām, kas uztur kopējo koda struktūru.  Tiek ietaupīts daudz laika un atmiņas vietas, jo nav nepieciešams deklarēt papildu mainīgos, kurus mēs deklarējam tradicionālajā cilpu pieejā.

Kur tie tiek izmantoti?

Dažādas cilpas metodes galvenokārt ir noderīgas vietās, kur mums nav faktiski jāmanipulē ar kopējo konteineru struktūru un secību, bet tikai jādrukā elementi vienreiz lietojamam gadījumam, konteinerā netiek veiktas izmaiņas vietā. To var izmantot arī dažos gadījumos, lai ietaupītu laiku.

Tālāk ir norādītas dažādas cilpas metodes, kurās tiek izmantotas Python datu struktūras.  

1. veids: izmantojot enumerate():   enumerate() tiek izmantots, lai cilpu cauri konteineriem, drukājot indeksa numuru kopā ar vērtību, kas atrodas šajā konkrētajā indeksā.



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

Izvade:

iphone emocijzīmes operētājsistēmā Android
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=' ') 

Izvade:

Geeks for Geeks is the Best Coding Platform 

2. veids: izmantojot zip():  zip() tiek izmantots, lai apvienotu 2 vai vairākus konteinerus, kas secīgi drukā vērtības. Cilpa pastāv tikai līdz mazākā konteinera beigām. Var atrast detalizētu zip() un enumerate() skaidrojumu šeit .

1. piemērs: divi dažādi datu tipi (saraksts)

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() 

Izvade
('Name: ' 'Deep') ('Age: ' 24) () ('Name: ' 'Sachin') ('Age: ' 27) () ('Name: ' 'Simran') ('Age: ' 25) () 

2. piemērs: divi līdzīgi datu tipi sarakstu saraksts

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)) 

Izvade:

režģa izkārtojums
What is your name? I am apple.  
What is your color? I am red.
What is your shape? I am a circle.

3. veids: iteritem():  iteritems() tiek izmantots, lai cilpu cauri vārdnīcai, secīgi drukātu vārdnīcas atslēgu un vērtību pāri, kas tiek izmantots pirms Python 3 versijas.

4. veids: vienumu izmantošana (): items() veic līdzīgu uzdevumu vārdnīcā kā iteritems(), taču salīdzinājumā ar iteritems() tam ir daži trūkumi.

  • Tā ir ļoti laikietilpīgi . To izsaukšana lielās vārdnīcās aizņem diezgan daudz laika.
  • Tas aizņem a daudz atmiņas . Dažreiz tas aizņem divkāršu atmiņu, ja to sauc vārdnīcā.

1. piemērs:

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) 

Izvade:

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

2. piemērs:

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) 

Izvade
Ashoka The Great Chandragupta The Maurya Modi The Changer 

5. veids: Sorted():   Sorted() tiek izmantots, lai drukātu konteiners ir sakārtots secībā . Tas nešķiro konteineru bet tikai izdrukā konteineru sakārtotā secībā 1 gadījumam. Izmantošana set() var apvienot, lai noņemtu dublikātu gadījumiem.

1. piemērs:

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=' ') 

Izvade:

    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. piemērs:

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) 

Izvade:

apple  
banana
grape
guava
guave
orange
pear

6. veids: reverse():  reverse() tiek izmantots, lai drukātu vērtības uz konteiners apgrieztā secībā . Tas neatspoguļo nekādas izmaiņas sākotnējā sarakstā

css robeža

1. piemērs:

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=' ') 

Izvade:

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

2. piemērs:

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) 

Izvade:

kā java pārvērst virkni par int
7  
4
1
  • Šīs metodes ir ātri lietojamas un samazina kodēšanas piepūli. jo cilpām ir jāmaina visa konteinera struktūra.
  • Šie Looping paņēmieni neprasa nekādas strukturālas izmaiņas konteinerā. Viņiem ir atslēgvārdi, kas precīzi norāda lietošanas mērķi. Tā kā cilpas laikā nevar izdarīt iepriekšējus paredzējumus vai minējumus, t.i., īsumā nav viegli saprast mērķi.
  • Ciklu veidošanas tehnika padara kodu kodolīgāku, nekā izmantojot cilpas veidošanu un cilpas veidošanu.

cilpas paņēmieni, vienlaikus izmantojot if paziņojumus:

Šajā piemērā mēs izmantojam cilpu while, lai palielinātu mainīgo, ko sauc par count. Cilpas iekšpusē mēs izmantojam if paziņojumu, lai pārbaudītu, vai skaits ir vienāds ar 3. Ja tas ir, mēs izdrukājam ziņojumu.

Pieeja:

Inicializējiet skaitīšanas mainīgo uz 0
Izmantojiet kamēr cilpu, lai atkārtoti izpildītu koda bloku, ja vien skaits ir mazāks par 5
Cilpas iekšpusē izmantojiet if paziņojumu, lai pārbaudītu, vai skaits ir vienāds ar 3
Ja skaits ir 3, izdrukājiet ziņojumu
Katras iterācijas beigās palieliniet skaitu par 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 

Izvade
Count is 3


Laika sarežģītība: O(n), kur n ir iterāciju skaits, kas nepieciešams, lai skaits sasniegtu 5.

Papildtelpa: O(1), jo visā kodā tiek izmantots tikai viens mainīgais (skaits).

Izveidojiet viktorīnu