Λύθηκε: άθροισμα 2d πίνακα σε python

Το κύριο πρόβλημα που σχετίζεται με την άθροιση ενός πίνακα 2D στην Python είναι ότι η σύνταξη για να γίνει αυτό μπορεί να είναι αρκετά περίπλοκη και δυσνόητη. Αυτό συμβαίνει επειδή υπάρχουν πολλοί τρόποι άθροισης ενός πίνακα 2D, ανάλογα με το σχήμα του πίνακα και τον τύπο άθροισης που επιθυμείτε. Για παράδειγμα, εάν θέλετε να αθροίσετε όλα τα στοιχεία σε έναν πίνακα 2D, θα πρέπει να χρησιμοποιήσετε βρόχους ένθετου για. Εάν θέλετε να αθροίσετε μόνο ορισμένα στοιχεία σε έναν πίνακα 2D, τότε θα χρειαστεί να χρησιμοποιήσετε κατανοήσεις λιστών ή άλλες πιο προηγμένες τεχνικές. Επιπλέον, μπορεί να είναι δύσκολο να εντοπιστούν σφάλματα κατά την εργασία με πίνακες 2D, καθώς είναι πιο περίπλοκοι από τους πίνακες 1D.

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

# Αυτός ο κώδικας ορίζει μια συνάρτηση που ονομάζεται sum_2d_array η οποία παίρνει έναν πίνακα ως όρισμα.
# Η μεταβλητή αποτελέσματος αρχικοποιείται σε 0.
# Ένας βρόχος for χρησιμοποιείται για επανάληψη στις σειρές του πίνακα και ένας ένθετος βρόχος for χρησιμοποιείται για επανάληψη στις στήλες κάθε σειράς.
# Για κάθε στοιχείο του πίνακα, η τιμή του προστίθεται στη μεταβλητή αποτελέσματος.
# Τέλος, η συνάρτηση επιστρέφει το συνολικό άθροισμα όλων των στοιχείων του πίνακα.

Τι είναι ένας πίνακας

?

Ένας πίνακας στην Python είναι μια δομή δεδομένων που αποθηκεύει μια συλλογή στοιχείων. Είναι παρόμοιο με μια λίστα, αλλά τα στοιχεία που είναι αποθηκευμένα σε έναν πίνακα είναι συνήθως του ίδιου τύπου και προσπελάζονται χρησιμοποιώντας αριθμητικούς δείκτες. Οι πίνακες μπορούν να χρησιμοποιηθούν για την αποθήκευση αριθμών, συμβολοσειρών, αντικειμένων και άλλων τύπων δεδομένων. Είναι επίσης χρήσιμα για την εκτέλεση μαθηματικών πράξεων σε μεγάλα σύνολα δεδομένων.

Array vs List στην Python

Το Array και το List είναι και οι δύο δομές δεδομένων στην Python που χρησιμοποιούνται για την αποθήκευση συλλογών δεδομένων. Ένας πίνακας είναι μια δομή δεδομένων που αποθηκεύει στοιχεία του ίδιου τύπου, ενώ μια λίστα είναι μια πιο ευέλικτη δομή δεδομένων που μπορεί να αποθηκεύσει στοιχεία διαφορετικών τύπων.

Οι πίνακες είναι ταχύτεροι και πιο αποτελεσματικοί για την αποθήκευση και την πρόσβαση σε δεδομένα από τις λίστες, αλλά είναι περιορισμένη στην ευελιξία τους επειδή όλα τα στοιχεία πρέπει να είναι του ίδιου τύπου. Οι λίστες από την άλλη πλευρά, μπορεί να περιέχουν στοιχεία διαφορετικών τύπων, αλλά καταλαμβάνουν περισσότερη μνήμη και είναι πιο αργή στην πρόσβαση από τους Πίνακες.

Πώς να αθροίσετε έναν πίνακα 2d στην Python

Για να αθροίσετε έναν πίνακα 2d στην Python, μπορείτε να χρησιμοποιήσετε την ενσωματωμένη συνάρτηση sum(). Η σύνταξη για αυτό είναι η εξής:

άθροισμα (πίνακας, άξονας=Κανένας)

Όπου ο πίνακας είναι ο 2d πίνακας που θέλετε να αθροίσετε και ο άξονας είναι ένα προαιρετικό όρισμα που καθορίζει ποιος άξονας του πίνακα πρέπει να αθροίζεται. Εάν δεν δοθεί τιμή για τον άξονα, τότε όλα τα στοιχεία του πίνακα θα αθροιστούν.

Για παράδειγμα, αν έχουμε έναν 2d πίνακα που ονομάζεται my_array με 3 σειρές και 4 στήλες:

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

Μπορούμε να χρησιμοποιήσουμε τον ακόλουθο κώδικα για να αθροίσουμε όλα τα στοιχεία του my_array:

σύνολο = άθροισμα (ο_πίνακας μου) #total = 78

Ή μπορούμε να χρησιμοποιήσουμε τον ακόλουθο κώδικα για να αθροίσουμε κάθε σειρά του my_array:

row_sums = άθροισμα (ο_πίνακας μου ,άξονας=1) #row_sums = [10 26 42]

Σχετικές αναρτήσεις:

Αφήστε ένα σχόλιο