A Python NumPy tömb átalakítása python listává

How Convert Python Numpy Array Python List



A tömbobjektum több érték tárolására szolgál, a listaobjektum pedig a Pythonban hasonló feladat elvégzésére egy tömbobjektumhoz. A NumPy tömbobjektum különböző típusú numerikus műveleteket végez a Pythonban. A többdimenziós tömb ezzel a könyvtárral hozható létre. A NumPy könyvtár beépített tolist () függvény a NumPy tömb python listává alakításához. Ez a függvény nem vesz fel argumentumokat, és visszaadja a python listát. Ha a tömb egydimenziós, akkor a függvény egyszerű python listát ad vissza. Ha a tömb többdimenziós, akkor a tömb visszaadja a beágyazott python listát. Ha a tömb mérete 0, akkor a függvény egy python skalár változót ad vissza lista helyett. Ez a bemutató bemutatja, hogy a tolist () függvény hogyan tudja átalakítani a különböző típusú NumPy tömböket python listává.

Szintaxis:

listandarray.tolist()

Itt, ndarray NumPy tömb lesz, a visszatérési érték pedig bármely lista, ha a ndarray egydimenziós vagy többdimenziós tömb.







A különböző típusú NumPy tömbök konvertálása Python listába:

Az egy vagy több dimenziós NumPy tömb átalakításának módjait ebben az oktatóanyagban mutatjuk be több példa használatával. A következő példák gyakorlásához bármilyen python támogatott szerkesztőt használhat. Ebben az oktatóanyagban a népszerű python -szerkesztőt, a PyCharm -ot használjuk az oktatóprogram szkriptjének megírásához.



1. példa: Egydimenziós tömb konvertálása listává

A következő példa bemutatja, hogyan lehet egydimenziós tömböt python listává alakítani a tolist () funkció. A NumPy könyvtárat a szkript elején importálják. arange () függvényt használjuk a szkriptben, hogy egy tartományú NumPy tömböt hozzunk létre. Ezután a tolist () függvény a NumPy tömb python listává alakítására szolgál.



# Import NumPy
importszarmintpéldául

# Hozzon létre egy egydimenziós NumPy tömböt egy értéktartománnyal
np_array=például.arange(5)

# Nyomtassa ki a NumPy tömböt
nyomtatás('A NumPy tömb értékei: n',np_array)

# A NumPy tömb konvertálása python listába
list_obj=np_array.tolist()

# Nyomtassa ki a python listát
nyomtatás('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ékei az első kimenetre kerültek nyomtatásra, ahol a tömbértékek elválasztására szóközt használnak. A python lista értékei a második kimenetben vannak kinyomtatva, ahol a vessző (,) a listaelemek elválasztására szolgál.





2. példa: Alakítson ki egy kétdimenziós tömböt listává

A következő példa bemutatja, hogyan lehet egy kétdimenziós NumPy tömb átalakítani python listává a tolist () funkció. A NumPy könyvtárat a szkript elején importálják. sor() függvény itt a kétdimenziós NumPy tömb létrehozására szolgál, amelyet később nyomtatunk ki. tolist () függvényt használják a szkriptben a kétdimenziós tömb beágyazott python listává alakításához. Ezután a python lista lesz kinyomtatva.



# Import NumPy
importszarmintpéldául

# Hozzon létre egy kétdimenziós NumPy tömböt a lista használatával
np_array=például.sor([[1, 2, 3], [4, 5, 6]])

# Nyomtassa ki a NumPy tömböt
nyomtatás('A NumPy tömb értékei: n',np_array)

# A NumPy tömb konvertálása python listába
list_obj=np_array.tolist()

# Nyomtassa ki a python listát
nyomtatás('A python lista értékei: n, 'list_obj)

Kimenet:

A következő kimenet jelenik meg a szkript végrehajtásakor. 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 átalakítása listává

A következő példa bemutatja, hogyan lehet egy háromdimenziós tömb átalakítani beágyazott python listává a tolist (). A NumPy könyvtárat a szkript elején importálják. Ezután a set_printoptions () függvénnyel állítható be a NumPy tömbben alkalmazott lebegő számok pontossági értéke. sor() függvényt használják 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 sor() függvény, megszorozva 10000 -mal, hogy megkapjuk a számértéket 4 számjeggyel a tizedespont előtt és 2 számjeggyel a tizedespont után. A háromdimenziós tömb értékei a következő utasításban kerülnek nyomtatásra. tolist () függvény átalakítja a háromdimenziós tömböt beágyazott python listává, a három beágyazott ciklus pedig a lista értékeinek formázására szolgál a tizedespont után 2 számjeggyel. Az kerek() függvényt használják a feladat elvégzésére. Ezután a formázott lista kinyomtatásra kerül.

# Import NumPy
importszarmintpéldául

# Állítsa be a lebegő értékek pontossági értékét
például.set_printoptions(pontosság=2,elnyom=Igaz)

# Nyilvánítson egy véletlen számok háromdimenziós tömbjét
np_array=például.véletlen.sor(2, 2, 2)*10.000

# Nyomtassa ki a NumPy tömböt
nyomtatás(' nA NumPy tömb értékei: n',np_array)

# A NumPy tömb konvertálása python listába
list_obj=np_array.tolist()

# Kerekítse a beágyazott lista értékeit
list_obj= [[[kerek(val3, 2) számáraval3ban benval2] számáraval2ban benval1] számáraval1ban benlist_obj]

# Nyomtassa ki a python listát
nyomtatás(' 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 elvégzéséhez, ahol több érték tárolható egyetlen változóban, amely úgy működik, mint a többi programozási nyelv numerikus tömbje. Különböző típusú tömbök hozhatók létre a Python NumPy könyvtárával. Néha a listát NumPy tömbré kell konvertálni, vagy fordítva. Ebben az oktatóanyagban egyszerű példák segítségével ismertetjük, hogyan lehet az egydimenziós és a többdimenziós tömböt python listává alakítani. Remélem, hogy az olvasók az oktatóanyag elolvasása után könnyen átalakítják a NumPy tömböt python listává.