Wycinek macierzy określonych liczby

0

Witam, mam pytanie jak zrobić wycinek macierzy, przykładowo mam macierz
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
I chciałbym pobrać liczby 13 14 18 19

0

Jak możesz, to spróbuj numpy
https://numpy.org/

0

Masz na myśli macierz w rozumieniu algebry liniowej (używasz jakiejś biblioteki?), czy po prostu masz na myśli listę?

Jak chodzi o zwykłą listę, to możesz zrobić slice: https://stackoverflow.com/questions/509211/understanding-slice-notation
np.
[10, 20, 30, 40, 50][1:3] będzie [20, 30]

2

Prosto można listą składaną (ang. list comprehension):

def wycinek(macierz, w1, w2, k1, k2):
    return [ w[k1:k2] for w in macierz[w1:w2] ]


macierz = [
            [  1,  2,  3,  4,  5 ],
            [  6,  7,  8,  9, 10 ],
            [ 11, 12, 13, 14, 15 ],
            [ 16, 17, 18, 19, 20 ],
            [ 21, 22, 23, 24, 25 ],
    ]

print(wycinek(macierz, 2, 4, 2, 4))

Wynik:

[[13, 14], [18, 19]]

1 użytkowników online, w tym zalogowanych: 0, gości: 1