přesně tak funguje numpy. Slicování a transpozice nic nekopíruje, pouze mějí pohled na data.
Tak v tom pripade naprosto bez ironie dekuji za doplneni vzdelani.
(Moje jedina zkusenost s numpy je zatim pouze takova, ze jsem ho musel pribalit k matplotlib a tim padem mi binarka pro zakaznika povyskocila o 13 MB, coz je pro me "starou skolu" docela dost.)
Ale jak to je s nejakym uvolnovanim pameti, kdyz si z matice 1000000x1000000 vezmu vyrez 10x10 a vim, ze ten zbytek uz nikdy potrebovat nebudu?
vyrobite si kopii toho vyrezu. Treba takto
To už pak ale není nový pohled na původní data. Princip pohledů je právě v tom, že neměníte data ale jenom způsob, jak se na ně díváte. Samozřejmě je nutné vždy zvážit, zda je lepší ponechat data v původní podobě (protože jejich transformace by byla drahá a s pohledem se bude pracovat jen málo), nebo zda je lepší je transformovat (protože se s nimi dále bude hodně pracovat a režie spojená s transformací se vrátí v následném lepším zpracování).
Pokud máte matici projít a pak se celá zahodí, nevadí, že se během procházení drží v paměti data, která už jsou k ničemu. Pokud vám vznikne výřez 10×10, se kterým budete dále pracovat, vyplatí se ten výřez si zkopírovat do nové datové struktury a tu původní velkou matici zahodit.