Informatică, întrebare adresată de alex032206, 8 ani în urmă

1.Se dau două liste l1 si l2 de lungime n. Să se înlocuiască elementele de pe poziții pare din
l1 cu cele de pe poziția corespunzătoare din l2 folosind feliere (slice)
2. Se dă o listă de numere naturale. Să se șteargă din listă subsecvența delimitată de primele
două zerouri din listă (inclusiv zerourile)
3. Se dă o listă de numere naturale. Să se șteargă din listă toate zerourile
Puteți sa îmi arătați cum este algoritmul în Python?

Răspunsuri la întrebare

Răspuns de VxF
2

Răspuns:

### 1. ###

l1 = ['q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o']

l2 = ['a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l']

l1[1::2] = l2[1::2]

print(l1)

### 2. ###

lista = [1, 2, 3, 0, 4, 5, 6, 0, 7, 8, 9, 0, 10, 11, 12, 0, 13, 14, 15]

inceput = lista.index(0)

sfarsit = lista.index(0, inceput + 1)

lista[inceput:sfarsit + 1] = []

print(lista)

### 3. ###

lista = [1, 2, 3, 0, 4, 5, 6, 0, 7, 8, 9, 0, 10, 11, 12, 0, 13, 14, 15]

lista = [i for i in lista if i]

print(lista)

Explicație:

Dacă există posibilitatea ca la 2. lista să conțină mai puţin decât 2 elemente 0, cel mai simplu e s-o bagi între try.. except .


alex032206: Va mulțumesc! Am o nelămurire, la exercițiul 1 ce face mai exact [1::2]?
Alte întrebări interesante