gulamin
#naukaprogramowania #python

mam liste list. kazdy element listy jest lista.
matrix = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]

jak dodac 1 do ostatniego elementu kazdej listy w liscie aby matrix =[[1, 2, 3, 5], [5, 6, 7, 9], [9, 10, 11, 13]]

petla w petli ? ni cholery nie wiem a przykladu nie potrafie znalezc podobnego
2
  • Najlepsze
  • Wszystkie komentarze
Bionizy
el[len(el)-1] += 1


@niezielony: @gulamin:

el[-1] += 1
2
jankiel7410
jankiel7410
@kasztanowiec: takie tworzenie list w pętli jest chyba skrajnie niewydajne w porównania do zwykłej pętli i inkrementacji?
2
3.....n
3.....n
@gulamin: Tożsamy, ale w pythonie się tak po prostu nie pisze. Poczytaj o listach, slice'ach, sekwencjach. Generalnie, zawsze zadawaj sobie tego typu pytania:
Mam listę jakichś obiektów. Czy chcę zrobić coś z każdym z nich? Tak, chcę zmienić coś w każdym elemencie zmiennej matrix. Tutaj wypada więc przejechać forem.
Teraz, patrzę na jeden z obiektów wewnątrz zmiennej matrix. Co to jest? Lista. Chcę coś zmienić dla każdego elementu listy? Nie. Chcę
2
M4ks
M4ks
@gulamin: eee,
matrix[0].append(5)
matrix[1].append(9)
matrix[2].append(13)

Czy chodzi o wyliczanie wartosci? :)
1
asunez
@gulamin: Czemu pętla w pętli? Wystarczy Ci jedna pętla, która skacze po kolejnych listach i do ostatniego (długość - 1) elementu doda 1. Nie znam składni Pythona, więc tylko tyle mogę pomóc.
1
niezielony
niezielony
@gulamin:
matrix = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]
for el in matrix:`
el[len(el)-1] +=
1
Bionizy
rozumiem ze to inny sposob zapisu/skladni


@gulamin: @niezielony: dokładnie tak, tu macie fajnie objaśnione, wraz z linkiem dokumentacji:
http://stackoverflow.com/a/509297

Wykop
1
kawoczeko
@gulamin: borzu, chyba jesteś mądra. Pięknie mówisz.
0
gulamin
@kawoczeko: pisze :). Dobrze ze nie slyszysz co mowie jak mi ta nauka nie wychodzi.
0
kawoczeko
@gulamin: kobieta ideał. Zamiast wirować w sobotę, uczy się / pracuje. Jakbym mógł plusowałbym :D
0
niezielony
niezielony
@Bionizy: Dzięki, nie wiedziałem o tym.
0
gulamin
@Bionizy: rozumiem ze to inny sposob zapisu/skladni ale tozsamy wynikowo z tym co napisal niezielony
0
kasztanowiec
@gulamin:
coś takiego:
matrix = [m [:-1] + [m[-1]+1] for m in matrix]
0