Ardıcıllıqların Python-da Eyni Zamanda Iterasiyası

Bir neçə ardıcıllığı eyni zamanda iterate etmək üçün zip funksiyasından istifadə edə bilərsiniz. Bu zaman bütün ardıcıllıq elementləri eyni indeksə malik elementlərdən ibarət korteclər şəklində çap olunacaq.

Nümunə

Tutaq ki, bizim iki siyahımız var:

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

Gəlin onların elementlərini cüt-cüt çap edək:

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

Kodun icrasının nəticəsi:

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

Nümunə

Fərqli tipli ardıcıllıqları da iterate etmək olar. Gəlin çoxluq və korteci döngü və zip funksiyası vasitəsilə keçirək:

pythonst = {'a', 'b', 'c'}
tlp = (1, 2, 3)

for el in zip(st, tlp):
  print(el)

Kodun icrasının nəticəsi:

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

Nümunə

Əgər bir ardıcıllığın uzunluğu digərindən böyükdürsə, onda onlar kiçik olanın elementləri qurtarana qədər iterate olunacaq:

pythonlst1 = ['a', 'b', 'c', 'd', 'e']
lst2 = [1, 2, 3, 4]

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

Kodun icrasının nəticəsi:

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

Nümunə

zip funksiyası vasitəsilə üç ardıcıllığı da iterate etmək olar. Bunun üçün funksiyanın parametrində onların hamısını vergüllə ayıraraq sadalayırıq:

pythonlst1 = ['a1', 'b1', 'c1']
lst2 = ['a2', 'b2', 'c2']
lst3 = ['a3', 'b3', 'c3']

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

Kodun icrasının nəticəsi:

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

Praktiki Tapşırıqlar

Задание 1

İki siyahı verilib:

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

Onların elementlərini korteç şəklində cüt-cüt çap edin.

Задание 2

İki siyahı verilib:

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

Onlardan aşağıdakı siyahını əldə edin:

python['a', '1', 'b', '2', 'c', '3']
Задание 3

Üç siyahı verilib:

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

Bu siyahıların uyğun elementlərini toplayaraq nəticəni yeni siyahıya yazın. Toplama aşağıdakı prinsiplə aparılmalıdır:

python[
  11 + 21 + 31,
  12 + 22 + 32,
  13 + 23 + 33,
  14 + 24 + 34,
]