Python Δισδιάστατοι πίνακες: Παραδείγματα λίστας δύο διαστάσεων

⚡ Έξυπνη Σύνοψη

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

  • 🧱 Δομή: Ένας δισδιάστατος πίνακας είναι ένας πίνακας από πίνακες σε γραμμές και στήλες.
  • 🔢 Ευρετηρίαση: Πρόσβαση σε ένα στοιχείο με πίνακα[γραμμή][στήλη]. Τα ευρετήρια ξεκινούν από το 0.
  • Εισαγωγή και ενημέρωση: Προσθέστε γραμμές με insert() και αλλάξτε τιμές κατά δείκτη.
  • 🗑️ Διαγραφή και Μέγεθος: Αφαιρέστε γραμμές με del και μετρήστε γραμμές με len().
  • 🔁 Επανάληψη: Χρησιμοποιήστε ένθετους βρόχους for για να διασχίσετε γραμμές και στήλες.
  • 🧮 Επιλογή NumPy: Για βαριά αριθμητική εργασία, δημιουργήστε πραγματικούς δισδιάστατους πίνακες με την numpy.array() για ταχύτητα.

Python Τρισδιάστατος πίνακας

Τι είναι ένας δισδιάστατος πίνακας σε Python?

Ο πίνακας είναι μια δομή δεδομένων που χρησιμοποιείται για την αποθήκευση στοιχείων. Ένας πίνακας μπορεί να αποθηκεύσει μόνο παρόμοιους τύπους στοιχείων. Ένας Δισδιάστατος ορίζεται ως ένας Πίνακας μέσα στον Πίνακα. Ο δείκτης του πίνακα ξεκινά με 0 και τελειώνει με μέγεθος πίνακα μείον 1. Μπορούμε να δημιουργήσουμε τον αριθμό 'n' πινάκων σε έναν πίνακα.

Python 2D Πίνακες

Στην παραπάνω εικόνα, μπορούμε να δούμε ότι ένα ευρετήριο προσδιορίζει μοναδικά κάθε στοιχείο πίνακα.

Πώς να δημιουργήσετε Array σε Python?

Μπορούμε να δημιουργήσουμε έναν δισδιάστατο πίνακα(λίστα) με γραμμές και στήλες.

Σύνταξη:

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

Που,

Το r σημαίνει γραμμές και το c για στήλες

Παράδειγμα: Ακολουθεί το παράδειγμα δημιουργίας

Δισδιάστατος πίνακας με 2 σειρές και 4 στήλες

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

Παραγωγή:

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

Πρόσβαση στις τιμές

Μπορούμε να έχουμε πρόσβαση στις τιμές χρησιμοποιώντας τη θέση ευρετηρίου

Σύνταξη:

Μπορούμε να λάβουμε την τιμή της γραμμής χρησιμοποιώντας [] χειριστής

array[row index]

Μπορούμε να λάβουμε την τιμή της στήλης χρησιμοποιώντας [][]

Array[row index][column index]

όπου,

  • Ο πίνακας είναι ένας πίνακας εισόδου
  • δείκτης σειράς είναι η θέση του ευρετηρίου σειράς που ξεκινά από το 0
  • δείκτης στήλης είναι η θέση του ευρετηρίου στήλης που ξεκινά από το 0 στη σειρά.

Παράδειγμα:

Σε αυτό το παράδειγμα θα έχουμε πρόσβαση στις τιμές χρησιμοποιώντας θέσεις ευρετηρίου

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

Παραγωγή:

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

Μπορούμε επίσης να έχουμε πρόσβαση σε στοιχεία χρησιμοποιώντας for loop

Σύνταξη:

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

όπου,

  • Οι σειρές χρησιμοποιούνται για την επανάληψη της σειράς προς σειρά
  • στήλες χρησιμοποιείται για την επανάληψη των τιμών που υπάρχουν σε κάθε γραμμή.

Παράδειγμα:

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

Παραγωγή:

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

Εισαγωγή των τιμών στον δισδιάστατο πίνακα

Εδώ θα εισαγάγουμε τιμές σε δισδιάστατο πίνακα χρησιμοποιώντας τη συνάρτηση insert().

Σύνταξη:

array.insert(index,[values])

όπου,

  • ο πίνακας είναι ο πίνακας εισόδου
  • το ευρετήριο είναι η θέση της σειράς για την εισαγωγή μιας συγκεκριμένης σειράς
  • τιμή είναι οι τιμές που πρέπει να εισαχθούν στον πίνακα

Παράδειγμα: Εισαγωγή σε τιμές στον πίνακα

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

Παραγωγή:

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

Ενημέρωση των τιμών στον δισδιάστατο πίνακα

Ακολουθούν δύο μέθοδοι για την ενημέρωση των τιμών στον πίνακα(λίστα) 2-D.

Μπορείτε να ενημερώσετε τις σειρές χρησιμοποιώντας την ακόλουθη σύνταξη

array[row_index]= [values]

Μπορείτε να ενημερώσετε τις τιμές στηλών μέσα σε γραμμές χρησιμοποιώντας την ακόλουθη σύνταξη

array[row_index][column_index]= [values]

Παράδειγμα:

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

Παραγωγή:

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

Διαγραφή τιμών από δισδιάστατο πίνακα

Μπορείτε να διαγράψετε σειρές χρησιμοποιώντας το del λειτουργία

Σύνταξη:

del array[index]

όπου,

  • ο πίνακας είναι ο πίνακας εισόδου
  • Το ευρετήριο αναφέρεται στο ευρετήριο σειράς

Παράδειγμα:

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

Παραγωγή:

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

Λάβετε το μέγεθος του δισδιάστατου πίνακα

Μπορείτε να λάβετε το μέγεθος του δισδιάστατου πίνακα χρησιμοποιώντας τη συνάρτηση line(). Θα επιστρέψει τον αριθμό των γραμμών στον πίνακα

Σύνταξη:

len(array)

Παράδειγμα:

Λάβετε το μήκος του δισδιάστατου πίνακα

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

Παραγωγή:

4

σημαντικό Python Μέθοδοι Πίνακα (Λίστας)

Ακολουθούν ορισμένες σημαντικές μέθοδοι Array(list).

Μέθοδος Περιγραφή Σύνταξη Παράδειγμα
Προσαρτώ(): Αυτή η μέθοδος μας βοηθά να προσθέσουμε ένα στοιχείο στο τέλος σε έναν υπάρχοντα πίνακα. array.append(value)
# Adding an element using append method to the end of an array array=[1,2,3] array.append(4) print(array)

Παραγωγή:

[1,2,3,4]
Σαφή(): Αυτή η μέθοδος μας βοηθά να αφαιρέσουμε όλα τα στοιχεία που υπάρχουν σε έναν πίνακα array.clear()
# Removing all the elements from an array array=[1,2,3]
array.clear()

Παραγωγή:

[]
Αντίγραφο(): Αυτή η μέθοδος μας βοηθά να αντιγράψουμε τα περιεχόμενα ενός πίνακα σε έναν νέο πίνακα array1=array.copy()
#Copying the elements from an array to a new array array=[1,2,3] array1=[]
array1=array.copy()
  print(array1)

Παραγωγή:

[1,2,3]
Μετρώ(): Αυτή η μέθοδος μας βοηθά να μετρήσουμε τον αριθμό των εμφανίσεων ενός καθορισμένου στοιχείου σε έναν πίνακα array.count(στοιχείο)
#Counting the no of times an element is present in an array array=[1,2,3]
print(array.count(8))
 Output: 0
Επεκτείνω(): Αυτή η μέθοδος μας βοηθά να επεκτείνουμε έναν πίνακα πέρα ​​από τα στοιχεία που αποτελείται από αυτόν. 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]
Δείκτης(): Αυτή η μέθοδος μας βοηθά να βρούμε το ευρετήριο ενός στοιχείου σε έναν πίνακα array.index(στοιχείο)
#returing the index an element in an array array=[1,2,3]
print(array.index(3))

Παραγωγή:

2
Εισάγετε(): Αυτή η μέθοδος μας βοηθά να εισάγουμε στοιχεία σε έναν πίνακα σε καθορισμένο ευρετήριο. array.insert(ευρετήριο,στοιχείο)
#Inserting an element at a specified index into an array array=[1,2,3]
array.insert(2,4)
  print(array)

Παραγωγή:

[1,2,4,3]
Κρότος(): Αυτή η μέθοδος μας βοηθά να αφαιρέσουμε ένα στοιχείο σε καθορισμένο ευρετήριο array.pop(index)
#Removing an element at specified index through pop method
array=[1,2,3]
array.pop(2)
  print(array)

Παραγωγή:

[1,2]
Αφαιρώ(): Αυτή η μέθοδος μας βοηθά να αφαιρέσουμε ένα συγκεκριμένο στοιχείο που ταιριάζει σε έναν πίνακα. array.remove(στοιχείο)
array=[1,2,3]
array.remove(2)
  print(array)

Παραγωγή:

[1,3]
Reverse(): Αυτή η μέθοδος βοηθάει στην αντιστροφή των στοιχείων σε έναν πίνακα. array.reverse()
array=[1,2,3,4]
array.reverse()
  print(array)

Παραγωγή:

[4,3,2,1]

Συχνές Ερωτήσεις

In Python, ένας δισδιάστατος πίνακας υλοποιείται συνήθως ως λίστα λιστών, επομένως οι δύο όροι σημαίνουν το ίδιο πράγμα. Για γρήγορη αριθμητική εργασία, η βιβλιοθήκη NumPy προσφέρει έναν αποκλειστικό τύπο πραγματικού πίνακα.

Εισαγάγετε το NumPy και, στη συνέχεια, διαβιβάστε μια λίστα λιστών στο numpy.array(), για παράδειγμα np.array([[1,2],[3,4]]). Οι πίνακες NumPy υποστηρίζουν γρήγορη μαθηματική επεξεργασία ανά στοιχείο, τεμαχισμό και αναδιαμόρφωση.ping ότι οι απλές λίστες λιστών δεν μπορούν να το κάνουν αποτελεσματικά.

Χρησιμοποιήστε μια κατανόηση λίστας όπως [[0]*στήλες για _ στο εύρος(γραμμές)]. Αποφύγετε τις [[0]*στήλες]*γραμμές, επειδή επαναλαμβάνουν την ίδια εσωτερική αναφορά λίστας, επομένως η επεξεργασία μίας γραμμής αλλάζει κατά λάθος κάθε γραμμή.

Χρησιμοποιήστε την len(array) για τον αριθμό των γραμμών και την len(array[0]) για τις στήλες στην πρώτη γραμμή. Με την NumPy, η ιδιότητα shape επιστρέφει και τις δύο τιμές ως πλειάδα (γραμμές, στήλες).

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

Χρησιμοποιήστε ένθετους βρόχους for: ο εξωτερικός βρόχος επαναλαμβάνεται σε κάθε γραμμή και ο εσωτερικός βρόχος επαναλαμβάνεται στις στήλες μέσα σε αυτήν τη γραμμή. Αυτό σας επιτρέπει να διαβάζετε ή να ενημερώνετε κάθε θέση στοιχείου ανά θέση.

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

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

Συνοψίστε αυτήν την ανάρτηση με: