⊗pyPmLpSI 158 of 208 menu

Vienlaicīga secību apstaigāšana Python

Lai vienlaicīgi apstaigātu vairākas secības, var izmantot funkciju zip. Šajā gadījumā visi secību elementi tiks izvadīti kā tuple, kas sastāv no elementiem ar identisku indeksu.

Piemērs

Pieņemsim, ka mums ir divi saraksti:

lst1 = ['a', 'b', 'c'] lst2 = [1, 2, 3]

Izvadīsim to elementus pa pāriem:

for el in zip(lst1, lst2): print(el)

Koda izpildes rezultāts:

('a', 1) ('b', 2) ('c', 3)

Piemērs

Var apstaigāt arī dažāda veida secības. Ilaidīsim cauri ciklam un funkcijai zip kopu un tuple:

st = {'a', 'b', 'c'} tlp = (1, 2, 3) for el in zip(st, tlp): print(el)

Koda izpildes rezultāts:

('a', 1) ('b', 2) ('c', 3)

Piemērs

Ja vienas secības garums ir lielāks par otras, tad tās tiks apstaigātas pēc īsākās elementiem:

lst1 = ['a', 'b', 'c', 'd', 'e'] lst2 = [1, 2, 3, 4] for el in zip(lst1, lst2): print(el)

Koda izpildes rezultāts:

('a', 1) ('b', 2) ('c', 3) ('d', 4)

Piemērs

Izmantojot funkciju zip, var apstaigāt arī trīs secības. Lai to izdarītu, funkcijas parametrā uzskaitām tās visas, atdalot ar komatu:

lst1 = ['a1', 'b1', 'c1'] lst2 = ['a2', 'b2', 'c2'] lst3 = ['a3', 'b3', 'c3'] for el in zip(lst1, lst2, lst3): print(el)

Koda izpildes rezultāts:

('a1', 'a2', 'a3') ('b1', 'b2', 'b3') ('c1', 'c2', 'c3')

Praktiskie uzdevumi

Doti divi saraksti:

tst1 = [1, 3, 5] tst2 = [2, 4, 6]

Izvadiet to elementus pa pāriem tuple veidā.

Doti divi saraksti:

tst1 = ['a', 'b', 'c'] tst2 = ['d', 'e', 'f']

Iegūstiet no tiem šādu sarakstu:

['a', '1', 'b', '2', 'c', '3']

Doti trīs saraksti:

tst1 = [11, 12, 13, 14] tst2 = [21, 22, 23, 24] tst3 = [31, 32, 33, 34]

Saskaitiet atbilstošos šo sarakstu elementus un rezultātu ierakstiet jaunā sarakstā. Summēšana notiks pēc šāda principa:

[ 11 + 21 + 31, 12 + 22 + 32, 13 + 23 + 33, 14 + 24 + 34, ]
Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt