Python 2D-matriser: tvådimensionella listexempel

⚡ Smart sammanfattning

Python En 2D-matris är en matris placerad inuti en annan matris och bildar rader och kolumner som en tabell. Exemplen nedan visar hur man skapar, öppnar, infogar, uppdaterar, tar bort och ändrar storlek på 2D-matriser.

  • 🧱 Strukturera: En 2D-array är en array av arrayer i rader och kolumner.
  • 🔢 Indexering: Åtkomst till ett element med array[row][column]; index börjar på 0.
  • Infoga och uppdatera: Lägg till rader med insert() och ändra värden efter index.
  • 🗑️ Ta bort och storlek: Ta bort rader med del och räkna rader med len().
  • 🔁 Iteration: Använd nästlade for-loopar för att gå igenom rader och kolumner.
  • 🧮 NumPy-alternativ: För tungt numeriskt arbete, skapa riktiga 2D-arrayer med numpy.array() för snabbhet.

Python 2D-matris

Vad är en tvådimensionell array i Python?

Array är en datastruktur som används för att lagra element. En array kan bara lagra liknande typer av element. En tvådimensionell definieras som en array inuti arrayen. Arrayens index börjar med 0 och slutar med storleken array minus 1. Vi kan skapa 'n' antal arrayer i en array.

Python 2D-matriser

I bilden ovan kan vi se att ett index unikt identifierar varje matriselement.

Hur man skapar Array i Python?

Vi kan skapa en tvådimensionell array(lista) med rader och kolumner.

syntax:

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

Var,

r står för rader och c står för kolumner

Exempel: Följande är exemplet för att skapa

2D-array med 4 rader och 5 kolumner

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

Produktion:

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

Tillgång till värdena

Vi kan komma åt värdena med hjälp av indexposition

syntax:

Vi kan få radvärde med hjälp av [] Operatören

array[row index]

Vi kan få kolumnvärde med hjälp av [][]

Array[row index][column index]

var,

  • array är en indatamatris
  • radindex är radindexpositionen börjar från 0
  • kolumnindex är kolumnindexpositionen börjar från 0 i rad.

Exempel:

I det här exemplet ska vi komma åt värdena med hjälp av indexpositioner

#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])

Produktion:

[[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

Vi kan också komma åt element med hjälp av for loop

syntax:

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

var,

  • rader används för att iterera rad för rad
  • kolumner används för att iterera värdena som finns i varje rad.

Exempel:

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()

Produktion:

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

Infogar värdena i den tvådimensionella arrayen

Här ska vi infoga värden i tvådimensionell array med hjälp av funktionen insert().

Syntax:

array.insert(index,[values])

var,

  • matrisen är inmatningsmatrisen
  • indexet är radpositionen för att infoga en viss rad
  • värde är de värden som ska infogas i arrayen

Exempel: Infoga till värden i arrayen

#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)

Produktion:

[[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]]

Uppdatering av värdena till den tvådimensionella arrayen

Här är två metoder för att uppdatera värden i 2-D-arrayen(listan).

Du kan uppdatera rader genom att använda följande syntax

array[row_index]= [values]

Du kan uppdatera kolumnvärden inuti rader genom att använda följande syntax

array[row_index][column_index]= [values]

Exempel:

#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)

Produktion:

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

Ta bort värdena från tvådimensionell array

Du kan ta bort rader med hjälp av del fungera

Syntax:

del array[index]

var,

  • matrisen är inmatningsmatrisen
  • index hänvisar till radindex

Exempel:

#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)

Produktion:

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

Få storleken på tvådimensionell array

Du kan få storleken på den tvådimensionella matrisen med funktionen line(). Det kommer att returnera antalet rader i arrayen

syntax:

len(array)

Exempel:

Få längden på den tvådimensionella matrisen

#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))

Produktion:

4

Viktigt Python Array (List) Metoder

Här är några viktiga Array(list)-metoder

Metod BESKRIVNING syntax Exempelvis
Bifoga(): Denna metod hjälper oss att lägga till ett element i slutet till en befintlig array. array.append(värde)
# Adding an element using append method to the end of an array array=[1,2,3] array.append(4) print(array)

Produktion:

[1,2,3,4]
Klar(): Denna metod hjälper oss att ta bort alla element som finns i en array array.clear()
# Removing all the elements from an array array=[1,2,3]
array.clear()

Produktion:

[]
Kopiera(): Denna metod hjälper oss att kopiera innehållet i en array till en ny array array1=array.copy()
#Copying the elements from an array to a new array array=[1,2,3] array1=[]
array1=array.copy()
  print(array1)

Produktion:

[1,2,3]
Räkna(): Denna metod hjälper oss att räkna antalet förekomster av ett specificerat element i en array array.count(element)
#Counting the no of times an element is present in an array array=[1,2,3]
print(array.count(8))
 Output: 0
Förlänga(): Den här metoden hjälper oss att utöka en array utöver det som består av element. array.extend(array1)
#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(): Denna metod hjälper oss att hitta indexet för ett element i en array array.index(element)
#returing the index an element in an array array=[1,2,3]
print(array.index(3))

Produktion:

2
Föra in(): Denna metod hjälper oss att infoga element i en array vid specificerat index. array.insert(index,element)
#Inserting an element at a specified index into an array array=[1,2,3]
array.insert(2,4)
  print(array)

Produktion:

[1,2,4,3]
Pop(): Denna metod hjälper oss att ta bort ett element vid specificerat index array.pop(index)
#Removing an element at specified index through pop method
array=[1,2,3]
array.pop(2)
  print(array)

Produktion:

[1,2]
Avlägsna(): Denna metod hjälper oss att ta bort ett visst matchande element i en array. array.remove(element)
array=[1,2,3]
array.remove(2)
  print(array)

Produktion:

[1,3]
Reverse(): Denna metod hjälper är att vända elementen i en array. array.reverse()
array=[1,2,3,4]
array.reverse()
  print(array)

Produktion:

[4,3,2,1]

Vanliga frågor

In Python, en 2D-matris implementeras normalt som en lista med listor, så de två termerna betyder samma sak. För snabbt numeriskt arbete erbjuder NumPy-biblioteket en dedikerad sann matristyp.

Importera NumPy och skicka sedan en lista med listor till numpy.array(), till exempel np.array([[1,2],[3,4]]). NumPy-arrayer stöder snabb elementvis matematik, slicing och omformning.ping som enkla listor över listor inte kan göra effektivt.

Använd en listförståelse som [[0]*cols for _ in range(rows)]. Undvik [[0]*cols]*rows, eftersom det upprepar samma inre listreferens, så att redigering av en rad av misstag ändrar varje rad.

Använd len(array) för antalet rader och len(array[0]) för kolumnerna i den första raden. Med NumPy returnerar shape-attributet båda värdena som en (rows, columns)-tupel.

En lista lagrar blandade datatyper och finns i spritt minne. En NumPy-array lagrar en datatyp i sammanhängande minne, använder mindre utrymme och kör numeriska operationer mycket snabbare eftersom de körs i C.

Använd kapslade loopar: den yttre loopen itererar över varje rad, och den inre loopen itererar över kolumnerna inuti den raden. Detta låter dig läsa eller uppdatera varje element position för position.

AI-assistenter kan generera 2D-matriskod, förklara indexfel, skriva kapslade loopar och konvertera mellan en lista med listor och en NumPy-matris, vilket snabbar upp inlärning och vardagliga datauppgifter.

Ja. GitHub Copilot autokompletterar skapande, indexering och traversering av 2D-arrayer från en kommentar, och agentverktyg kan omstrukturera kapslade loopar eller automatiskt upptäcka fel i en fil.

Sammanfatta detta inlägg med: