Löst: summa 2d array i python

Det största problemet med att summera en 2D-array i Python är att syntaxen för att göra det kan vara ganska komplex och svår att förstå. Detta beror på att det finns flera sätt att summera en 2D-matris, beroende på formen på matrisen och vilken typ av summering som önskas. Till exempel, om du vill summera alla element i en 2D-array, måste du använda kapslade för loopar. Om du bara vill summera vissa element i en 2D-array, måste du använda listförståelse eller andra mer avancerade tekniker. Dessutom kan det vara svårt att felsöka fel när man arbetar med 2D-arrayer eftersom de är mer komplexa än 1D-arrayer.

def sum_2d_array(arr): 
    result = 0
  
    # iterate through rows 
    for i in range(0, len(arr)): 
  
        # iterate through columns 
        for j in range(0, len(arr[i])): 
            result += arr[i][j] 

    return result

# Den här koden definierar en funktion som kallas sum_2d_array som tar in en array som ett argument.
# Resultatvariabeln initieras till 0.
# En for loop används för att iterera genom raderna i arrayen, och en kapslad för loop används för att iterera genom kolumnerna i varje rad.
# För varje element i arrayen läggs dess värde till resultatvariabeln.
# Slutligen returnerar funktionen den totala summan av alla element i arrayen.

Vad är en array

?

En array i Python är en datastruktur som lagrar en samling objekt. Det liknar en lista, men objekten som lagras i en array är vanligtvis av samma typ och nås med numeriska index. Matriser kan användas för att lagra siffror, strängar, objekt och andra datatyper. De är också användbara för att utföra matematiska operationer på stora uppsättningar data.

Array vs List i Python

Array och List är båda datastrukturer i Python som används för att lagra datasamlingar. En Array är en datastruktur som lagrar objekt av samma typ, medan en List är en mer flexibel datastruktur som kan lagra objekt av olika typer.

Matriser är snabbare och mer effektiva för att lagra och komma åt data än listor, men de är begränsade i sin flexibilitet eftersom alla element måste vara av samma typ. Listor å andra sidan kan innehålla element av olika typer, men de tar upp mer minne och är långsammare att komma åt än Arrays.

Hur man summerar en 2d-array i Python

För att summera en 2d-array i Python kan du använda den inbyggda sum()-funktionen. Syntaxen för detta är följande:

summa(matris, axel=Ingen)

Där array är den 2d array du vill summera och axel är ett valfritt argument som anger vilken axel i arrayen som ska summeras. Om inget värde anges för axel, kommer alla element i matrisen att summeras.

Till exempel, om vi har en 2d-array som heter my_array med 3 rader och 4 kolumner:

[[1,2,3,4],
[5,6,7,8],
[9,10,11,12]]

Vi kan använda följande kod för att summera alla element i my_array:

total = summa(my_array) #total = 78

Eller så kan vi använda följande kod för att summera varje rad i my_array:

radsummor = summa(min_matris, axel=1) #radsummor = [10 26 42]

Relaterade inlägg:

Lämna en kommentar