„Python“ kai kuriais atvejais mums reikia vienmačio masyvo, o ne 2-D ar daugiamačio masyvo. Šiuo tikslu numpy modulis suteikia funkciją, vadinamą numpy.ndarray.flatten(), kuris grąžina vieno matmens masyvo kopiją, o ne 2-D ar daugiamatį masyvą.
Sintaksė
ndarray.flatten(order='C')
Parametrai:
tvarka: {'C', 'F', 'A', 'K'} (pasirenkama)
Jei užsakymo parametrą nustatome į 'C', tai reiškia, kad masyvas bus išlygintas pagrindine eilės tvarka. Jei nustatytas „F“, masyvas išlyginamas didžiąja stulpelio tvarka. Masyvas išlyginamas didžiąja stulpelio tvarka tik tada, kai „a“ yra „Fortran“ gretimas atmintyje ir kai nustatome eilės parametrą „A“. Paskutinė tvarka yra „K“, kuri išlygina masyvą ta pačia tvarka, kuria elementai atsirado atmintyje. Pagal numatytuosius nustatymus šis parametras nustatytas į „C“.
Grąžinimai:
y: ndarray
Ši funkcija grąžina šaltinio masyvo kopiją, kuri išlyginama į vienmatį.
priešinga paieška
1 pavyzdys:
import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten() b
Išvestis:
array([1, 4, 7, 2, 5, 8, 3, 6, 9])
Aukščiau pateiktame kode
- Mes importavome numpy su slapyvardžiu np.
- Naudodami sukūrėme daugiamatį masyvą „a“. masyvas () funkcija.
- Mes paskelbėme kintamąjį „b“ ir priskyrėme grąžintą reikšmę išlyginti () funkcija.
- Galiausiai bandėme atspausdinti vertę 'b' .
Išvestyje rodomas ndarray, kuriame yra daugiamačio masyvo elementai į 1-D.
2 pavyzdys:
import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('C') b
Išvestis:
array([1, 4, 7, 2, 5, 8, 3, 6, 9])
Aukščiau pateiktame kode
- Mes importavome numpy su slapyvardžiu np.
- Naudodami sukūrėme daugiamatį masyvą „a“. masyvas () funkcija.
- Mes paskelbėme kintamąjį „b“ ir priskyrėme grąžintą reikšmę išlyginti () funkcija.
- Funkcijoje naudojome „C“ tvarką.
- Galiausiai bandėme atspausdinti vertę 'b' .
Išvestyje rodomas ndarray, kuriame yra daugiamačio masyvo elementai į 1-D.
3 pavyzdys:
import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('F') b
Išvestis:
array([1, 2, 3, 4, 5, 6, 7, 8, 9])
4 pavyzdys:
import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('A') b
Išvestis:
array([1, 4, 7, 2, 5, 8, 3, 6, 9])
5 pavyzdys:
import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('K') b
Išvestis:
array([1, 4, 7, 2, 5, 8, 3, 6, 9])