Szintaxis:
list ndarray.tolist ()Itt, ndarray NumPy tömb lesz, és a visszatérési érték bármilyen lista lesz, ha a ndarray egydimenziós vagy többdimenziós tömb.
Konvertáljon különböző típusú NumPy tömböt Python listává:
Ebben az oktatóanyagban egy vagy több dimenziós NumPy tömb átalakításának módjait mutatjuk be több példa felhasználásával. Bármely python által támogatott szerkesztőt használhat a következő példák gyakorlásához. A népszerű Python szerkesztő, a PyCharm ebben az oktatóanyagban használható az oktatószkript megírásához.
1. példa: Alakítson át egydimenziós tömböt listává
A következő példa bemutatja, hogyan lehet az egydimenziós tömböt python listává alakítani a tolist () funkció. A NumPy könyvtár importálva van a szkript elején. arange () függvényt használnak a szkriptben a tartományértékek egydimenziós NumPy tömbjének létrehozásához. Ezután a tolist () függvény a NumPy tömb python listává konvertálására szolgál.
# Importálja a NumPy-timportálja a numpy-t np-ként
# Hozzon létre egy egydimenziós NumPy tömböt értéktartománnyal
np_array = np.aranysárga (5)
# Nyomtassa ki a NumPy tömböt
print ("A NumPy tömb értéke: \ n", np_array)
# A NumPy tömb konvertálása python listává
list_obj = np_array.tolist ()
# Nyomtassa ki a python listát
print ("A python lista értékei: \ n", list_obj)
Kimenet:
A szkript végrehajtása után a következő kimenet jelenik meg. A NumPy tömbértékek kinyomtatásra kerültek az első kimeneten, ahol helyet használnak a tömbértékek elválasztására. A python listaértékek kinyomtatásra kerültek a második kimenetben, ahol a vesszőt (,) használják a listaelemek elválasztására.
2. példa: Kétdimenziós tömb konvertálása listává
Az alábbi példa bemutatja, hogyan lehet a kétdimenziós NumPy tömböt Python listává alakítani a tolist () funkció. A NumPy könyvtár importálva van a szkript elején. sor() függvény itt használható a később kinyomtatható numerikus értékek kétdimenziós NumPy tömbjének létrehozására. tolist () függvény segítségével a szkript átalakítja a kétdimenziós tömböt beágyazott python listává. Ezután kinyomtatják a python listát.
# Importálja a NumPy-timportálja a numpy-t np-ként
# Hozzon létre egy kétdimenziós NumPy tömböt a lista használatával
np_array = np.tömb ([[1, 2, 3], [4, 5, 6]])
# Nyomtassa ki a NumPy tömböt
print ("A NumPy tömb értéke: \ n", np_array)
# A NumPy tömb konvertálása python listává
list_obj = np_array.tolist ()
# Nyomtassa ki a python listát
print ("A python lista értékei: \ n," list_obj)
Kimenet:
A következő kimenet jelenik meg a parancsfájl végrehajtásával. Az első kimenet a két listából létrehozott NumPy kétdimenziós tömb értékeit mutatja. A második kimenet a beágyazott python lista értékeit mutatja.
3. példa: Háromdimenziós tömb konvertálása listává
A következő példa bemutatja, hogyan lehet a háromdimenziós tömböt beágyazott python listává alakítani az a használatával tolist (). A NumPy könyvtár importálva van a szkript elején. Ezután a set_printoptions () függvény segítségével beállíthatja a NumPy tömbben alkalmazott lebegő számok pontosságát. rand () függvényt használnak a szkriptben egy háromdimenziós NumPy tömb létrehozásához. Ez a függvény generálja a véletlenszerűen lebegő számot. A lebegő számok háromdimenziós tömbjét a rand () függvény, megszorozva 10000-mal, hogy a számjegyet 4 számjeggyel a tizedespont előtt és 2 számjeggyel a tizedespont után kapjuk meg. A háromdimenziós tömb értékeit a következő utasítás nyomtatja ki. tolist () függvény átalakítja a háromdimenziós tömböt beágyazott python listává, és a három beágyazott hurok segítségével a jegyértékeket tizedespont után 2 számjeggyel formázzák. A kerek() függvény a feladat elvégzésére szolgál. Ezután kinyomtatja a formázott listát.
# Importálja a NumPy-timportálja a numpy-t np-ként
# Állítsa be a lebegő értékek pontosságát
np.set_printoptions (pontosság = 2, elnyomás = igaz)
# Nyújtsa be a véletlen számok háromdimenziós tömbjét
np_array = np.véletlen.rand (2, 2, 2) * 10000
# Nyomtassa ki a NumPy tömböt
print ("\ nA NumPy tömb értékei: \ n", np_array)
# A NumPy tömb konvertálása python listává
list_obj = np_array.tolist ()
# Kerekítse a beágyazott lista értékeit
list_obj = [[[kerek (val3, 2) for val3 in val2] for val2 in val1] for val1 a list_obj]
# Nyomtassa ki a python listát
print ("\ nA python lista értékei: \ n", list_obj)
Kimenet:
A szkript végrehajtása után a következő kimenet jelenik meg. Az első kimenet a háromdimenziós NumPy tömb értékeit mutatja. A második kimenet a listaértékek formázott kimenetét mutatja.
Következtetés:
A Python lista hasznos objektum különféle műveletek végrehajtásához, ahol több érték tárolható egyetlen változóban, amely úgy működik, mint más programozási nyelvek numerikus tömbje. Különböző típusú tömbök generálhatók a Python NumPy könyvtárának használatával. Néha meg kell konvertálni a listát NumPy tömbbe vagy fordítva. Az egydimenziós és a többdimenziós tömb átalakítása python listává ebben az oktatóanyagban egyszerű példákkal magyarázható. Remélem, hogy az olvasók a bemutató elolvasása után a NumPy tömböt könnyen python listává alakítják.