Python 2D tömbök: Példák kétdimenziós listára

⚡ Okos összefoglaló

Python A 2D tömb egy másik tömbön belül elhelyezett tömb, amely sorokat és oszlopokat alkot, mint egy táblázat. Az alábbi példák bemutatják, hogyan hozhatók létre, érhetők el, szúrhatók be, frissíthetők, törölhetők és méretezhetők 2D tömbök.

  • 🧱 Szerkezet: A 2D tömb sorokból és oszlopokból álló tömbök tömbje.
  • 🔢 Indexelés: Egy elem elérése tömb[sor][oszlop] tömbbel; az indexek 0-val kezdődnek.
  • Beszúrás és frissítés: Sorok hozzáadása az insert() függvénnyel, és az értékek index szerinti módosítása.
  • 🗑️ Törlés és méretezés: Sorok eltávolítása a del függvénnyel, sorok számlálása pedig a len() függvénnyel.
  • 🔁 Ismétlés: Használjon beágyazott ciklusokat sorok és oszlopok bejárására.
  • 🧮 NumPy opció: Nehéz numerikus munkához a sebesség érdekében hozz létre valódi 2D tömböket a numpy.array() függvénnyel.

Python 2D tömb

Mi az a kétdimenziós tömb a Python?

A tömb egy adatstruktúra, amely elemek tárolására szolgál. Egy tömb csak hasonló típusú elemeket tárolhat. A kétdimenziós egy tömb a tömbön belül. A tömb indexe 0-val kezdődik és a tömb mínusz 1-gyel végződik. Egy tömbben 'n' számú tömböt hozhatunk létre.

Python 2D tömbök

A fenti képen láthatjuk, hogy egy index egyedileg azonosítja az egyes tömbelemeket.

Hogyan lehet tömböt létrehozni Python?

Létrehozhatunk kétdimenziós tömböt (listát) sorokkal és oszlopokkal.

Szintaxis:

[[r1,r2,r3,..,rn],[c1,c2,c3,.......,cn]]

Ahol,

Az r a sorokat, a c pedig az oszlopokat jelöli

Példa: A következő példa a létrehozásra

2D tömb 4 sorból és 5 oszlopból

array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]
#display
print(array)

output:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]

Az értékek elérése

Az értékeket indexpozíció segítségével érhetjük el

Szintaxis:

segítségével kaphatunk sorértéket [] operátor

array[row index]

segítségével kaphatunk oszlopértéket [][]

Array[row index][column index]

ahol,

  • A tömb egy bemeneti tömb
  • A sorindex a sorindex pozíciója 0-tól kezdődik
  • oszlopindex az oszlopindex pozíciója 0-tól kezdődik egy sorban.

Példa:

Ebben a példában az értékeket indexpozíciók segítségével fogjuk elérni

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#display
print(array)

#get the first row
print(array[0])

#get the third row
print(array[2])

#get the first row third element
print(array[0][2])

#get the third row forth element
print(array[2][3])

output:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]
[23, 45, 43, 23, 45]
[89, 90, 87, 65, 44]
43
65

segítségével is elérhetjük az elemeket for loop

Szintaxis:

for rows in the array:
  for columns in rows:
    print(columns)

ahol,

  • A sorok a sorok ismétlésére szolgálnak
  • oszlopok az egyes sorokban található értékek iterálására szolgál.

Példa:

Creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#use for loop to iterate the array
for rows in array:
 for columns in rows:
   print(columns,end=" ")
   print()

output:

23 45 43 23 45
45 67 54 32 45
89 90 87 65 44
23 45 67 32 10

Az értékek beillesztése a kétdimenziós tömbbe

Itt értékeket fogunk beszúrni kétdimenziós tömbbe az insert() függvény segítségével

Syntax:

array.insert(index,[values])

ahol,

  • a tömb a bemeneti tömb
  • az index a sor pozíciója egy adott sor beszúrásához
  • érték a tömbbe beszúrandó értékek

Példa: Beszúrás a tömbben lévő értékekhez

#Create 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#insert the row at 5 th position
array.insert(2, [1,2,3,4,5])

#insert the row at 6 th position
array.insert(2, [1,2,3,4,5])

#insert the row at 7 th position
array.insert(2, [1,2,3,4,5])

#display
print(array)

output:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]

Az értékek frissítése a kétdimenziós tömbbe

Íme két módszer a 2-D array(list) értékeinek frissítésére.

A sorokat a következő szintaxis használatával frissítheti

array[row_index]= [values]

A következő szintaxis használatával frissítheti a sorokon belüli oszlopértékeket

array[row_index][column_index]= [values]

Példa:

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#update row values in the 3rd row
array[2]=[0,3,5,6,7]

#update row values in the 5th row
array[2]=[0,3,5,6,7]

#update the first row , third column
array[0][2]=100

#update the second row , third column
array[1][2]=400

#display
print(array)

output:

[[23, 45, 100, 23, 45], [45, 67, 400, 32, 45], [0, 3, 5, 6, 7], [23, 45, 67, 32, 10]]

Az értékek törlése kétdimenziós tömbből

A sorokat a gombbal törölheti del funkció

Syntax:

del array[index]

ahol,

  • a tömb a bemeneti tömb
  • index a sorindexre utal

Példa:

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#delete row values in the 3rd row
del array[2]

#delete row values in the 2nd row
del array[1]

#display
print(array)

output:

[[23, 45, 43, 23, 45], [23, 45, 67, 32, 10]]

Szerezze meg a kétdimenziós tömb méretét

A kétdimenziós tömb méretét a line() függvény segítségével kaphatja meg. A tömbben lévő sorok számát adja vissza

Szintaxis:

len(array)

Példa:

Adja meg a kétdimenziós tömb hosszát

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]
#display
print(len(array))

output:

4

fontos Python Tömb (lista) metódusok

Íme néhány fontos tömb(lista) módszer

Módszer Leírás Szintaxis Példa
Mellékel(): Ez a módszer segít abban, hogy egy meglévő tömb végére adjunk egy elemet. array.append(érték)
# Adding an element using append method to the end of an array array=[1,2,3] array.append(4) print(array)

output:

[1,2,3,4]
Egyértelmű(): Ez a módszer segít eltávolítani a tömbben lévő összes elemet array.clear()
# Removing all the elements from an array array=[1,2,3]
array.clear()

output:

[]
Másolat(): Ez a módszer segít nekünk egy tömb tartalmát egy új tömbbe másolni tömb1=tömb.copy()
#Copying the elements from an array to a new array array=[1,2,3] array1=[]
array1=array.copy()
  print(array1)

output:

[1,2,3]
Számol(): Ez a módszer segít megszámolni egy adott elem előfordulási számát egy tömbben array.count(elem)
#Counting the no of times an element is present in an array array=[1,2,3]
print(array.count(8))
 Output: 0
Kiterjeszt(): Ez a módszer segít nekünk kiterjeszteni egy tömböt a benne lévő elemeken túlra. array.extend(tömb1)
#Extending an existing array with another array array=[1,2,3] array1=[4,5,6] array.extend(array1) print(array)
Output: [1,2,3,4,5,6]
Index(): Ez a módszer segít megtalálni egy elem indexét egy tömbben array.index(elem)
#returing the index an element in an array array=[1,2,3]
print(array.index(3))

output:

2
Insert(): Ez a módszer segít abban, hogy elemeket szúrjunk be egy adott indexű tömbbe. array.insert(index,elem)
#Inserting an element at a specified index into an array array=[1,2,3]
array.insert(2,4)
  print(array)

output:

[1,2,4,3]
Pop(): Ez a módszer segít eltávolítani egy elemet a megadott indexen array.pop(index)
#Removing an element at specified index through pop method
array=[1,2,3]
array.pop(2)
  print(array)

output:

[1,2]
Eltávolítás(): Ez a módszer segít eltávolítani egy adott illeszkedő elemet egy tömbből. array.remove(elem)
array=[1,2,3]
array.remove(2)
  print(array)

output:

[1,3]
Reverse(): Ez a módszer segít egy tömb elemeinek megfordításában. array.reverse()
array=[1,2,3,4]
array.reverse()
  print(array)

output:

[4,3,2,1]

GYIK

In PythonEgy 2D tömböt általában listák listájaként valósítanak meg, tehát a két kifejezés ugyanazt jelenti. A gyors numerikus munkához a NumPy könyvtár egy dedikált valódi tömbtípust kínál.

Importáld a NumPy-t, majd adj át egy listaelemekből álló listát a numpy.array() függvénynek, például np.array([[1,2],[3,4]]). A NumPy tömbök támogatják a gyors, elemenkénti matematikai műveleteket, szeletelést és átméretezést.ping amit a listák egyszerű listái nem tudnak hatékonyan megtenni.

Használj listaértelmezést, például [[0]*cols for _ in range(rows)]. Kerüld a [[0]*cols]*rows kifejezést, mert ugyanazt a belső listahivatkozást ismétli, így egy sor szerkesztése véletlenül minden sort megváltoztat.

Használd a len(array) függvénnyel a sorok számát és a len(array[0]) függvénnyel az első sor oszlopainak számát. A NumPy esetében a shape attribútum mindkét értéket (sorok, oszlopok) tuple-ként adja vissza.

Egy lista vegyes adattípusokat tárol, és szétszórt memóriában található. Egy NumPy tömb egy adattípust tárol összefüggő memóriában, kevesebb helyet használ, és sokkal gyorsabban futtat numerikus műveleteket, mivel C nyelven fut.

Használj beágyazott ciklusokat: a külső ciklus végigmegy minden soron, a belső ciklus pedig az adott soron belüli oszlopokon. Ez lehetővé teszi, hogy minden elemet pozícióról pozícióra olvass vagy frissíts.

A mesterséges intelligencia asszisztensek képesek 2D tömbkódot generálni, indexhibákat magyarázni, beágyazott ciklusokat írni, valamint listák listája és NumPy tömb között konvertálni, ami felgyorsítja a tanulást és a mindennapi adatfeldolgozási feladatokat.

Igen. A GitHub Copilot automatikusan elvégzi a 2D tömbök létrehozását, indexelését és bejárását egy megjegyzésből, az ágenseszközök pedig képesek refaktorálni a beágyazott ciklusokat, vagy automatikusan kiszűrni a fájlon belüli hibákat.

Foglald össze ezt a bejegyzést a következőképpen: