Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

5.9 Άλλες Μέθοδοι Λιστών στην Python

Οι λίστες στην Python διαθέτουν πολλές χρήσιμες μεθόδους που επιτρέπουν την επεξεργασία και τη διαχείρισή τους. Ας εξετάσουμε μερικές από αυτές.

Εισαγωγή Στοιχείου σε Συγκεκριμένο Δείκτη

Η μέθοδος insert χρησιμοποιείται για να εισαγάγετε ένα στοιχείο σε μια συγκεκριμένη θέση της λίστας.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
numbers = [1, 2, 3, 5]
numbers.insert(3, 4) # Εισάγει το 4 στη θέση με δείκτη 3
print(numbers) # Εμφανίζει [1, 2, 3, 4, 5]
numbers = [1, 2, 3, 5] numbers.insert(3, 4) # Εισάγει το 4 στη θέση με δείκτη 3 print(numbers) # Εμφανίζει [1, 2, 3, 4, 5]
numbers = [1, 2, 3, 5]
numbers.insert(3, 4)  # Εισάγει το 4 στη θέση με δείκτη 3
print(numbers)  # Εμφανίζει [1, 2, 3, 4, 5]

Προσθήκη Στοιχείου στο Τέλος της Λίστας

Η μέθοδος append προσθέτει ένα στοιχείο στο τέλος της λίστας.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
numbers.append(6)
print(numbers) # Εμφανίζει [1, 2, 3, 4, 5, 6]
numbers.append(6) print(numbers) # Εμφανίζει [1, 2, 3, 4, 5, 6]
numbers.append(6)
print(numbers)  # Εμφανίζει [1, 2, 3, 4, 5, 6]

Προσθήκη Όλων των Στοιχείων μιας Ακολουθίας στο Τέλος της Λίστας

Η μέθοδος extend προσθέτει τα στοιχεία μιας άλλης ακολουθίας στο τέλος της λίστας.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
numbers.extend([7, 8])
print(numbers) # Εμφανίζει [1, 2, 3, 4, 5, 6, 7, 8]
numbers.extend([7, 8]) print(numbers) # Εμφανίζει [1, 2, 3, 4, 5, 6, 7, 8]
numbers.extend([7, 8])
print(numbers)  # Εμφανίζει [1, 2, 3, 4, 5, 6, 7, 8]

Αφαίρεση της Πρώτης Εμφάνισης ενός Στοιχείου

Η μέθοδος remove αφαιρεί την πρώτη εμφάνιση ενός στοιχείου από τη λίστα.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
numbers.remove(5)
print(numbers) # Εμφανίζει [1, 2, 3, 4, 6, 7, 8]
numbers.remove(5) print(numbers) # Εμφανίζει [1, 2, 3, 4, 6, 7, 8]
numbers.remove(5)
print(numbers)  # Εμφανίζει [1, 2, 3, 4, 6, 7, 8]

Άδειασμα Λίστας

Η μέθοδος clear αδειάζει όλα τα στοιχεία της λίστας.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
numbers.clear()
print(numbers) # Εμφανίζει []
numbers.clear() print(numbers) # Εμφανίζει []
numbers.clear()
print(numbers)  # Εμφανίζει []

Μέτρηση των Εμφανίσεων ενός Στοιχείου

Η μέθοδος count επιστρέφει τον αριθμό των φορών που ένα στοιχείο εμφανίζεται στη λίστα.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
numbers = [1, 2, 3, 4, 3, 2, 1]
print(numbers.count(2)) # Εμφανίζει 2
numbers = [1, 2, 3, 4, 3, 2, 1] print(numbers.count(2)) # Εμφανίζει 2
numbers = [1, 2, 3, 4, 3, 2, 1]
print(numbers.count(2))  # Εμφανίζει 2

Αντιστροφή των Στοιχείων μιας Λίστας

Η μέθοδος reverse αντιστρέφει τη σειρά των στοιχείων μιας λίστας.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
numbers.reverse()
print(numbers) # Εμφανίζει [1, 2, 3, 4, 3, 2, 1]
numbers.reverse() print(numbers) # Εμφανίζει [1, 2, 3, 4, 3, 2, 1]
numbers.reverse()
print(numbers)  # Εμφανίζει [1, 2, 3, 4, 3, 2, 1]

Αντιγραφή Λίστας

Η μέθοδος copy δημιουργεί ένα αντίγραφο της λίστας.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
numbers_copy = numbers.copy()
print(numbers_copy) # Εμφανίζει [1, 2, 3, 4, 3, 2, 1]
numbers_copy = numbers.copy() print(numbers_copy) # Εμφανίζει [1, 2, 3, 4, 3, 2, 1]
numbers_copy = numbers.copy()
print(numbers_copy)  # Εμφανίζει [1, 2, 3, 4, 3, 2, 1]

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

Προσομοίωση Στοίβας (Stack) με Χρήση Λιστών στην Python

Αν και η Python δεν έχει ενσωματωμένο τύπο δεδομένων για την στοίβα (stack), μπορείτε να χρησιμοποιήσετε λίστες για να προσομοιώσετε τη λειτουργία μιας στοίβας. Στην στοίβα, το τελευταίο στοιχείο που προστίθεται είναι το πρώτο που αφαιρείται, γνωστό ως Last-In, First-Out (LIFO).

Προσθήκη και Αφαίρεση Στοιχείων στη Στοίβα

  1. Δημιουργία Στοίβας: Αρχικά, δημιουργήστε μια κενή λίστα που θα λειτουργήσει ως στοίβα.
Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
stack = []
stack = []
   stack = []
  1. Προσθήκη Στοιχείων (Push): Χρησιμοποιήστε τη μέθοδο append για να προσθέσετε στοιχεία στη στοίβα.
Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
stack.append("apple")
stack.append("banana")
stack.append("apple") stack.append("banana")
   stack.append("apple")
   stack.append("banana")
  1. Αφαίρεση Στοιχείων (Pop): Χρησιμοποιήστε τη μέθοδο pop χωρίς ορίσματα για να αφαιρέσετε και να λάβετε το τελευταίο στοιχείο που προστέθηκε.
Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
print(stack.pop()) # Επιστρέφει "banana"
print(stack.pop()) # Επιστρέφει "apple"
print(stack.pop()) # Επιστρέφει "banana" print(stack.pop()) # Επιστρέφει "apple"
   print(stack.pop())  # Επιστρέφει "banana"
   print(stack.pop())  # Επιστρέφει "apple"

Αν καλέσετε την pop σε μια κενή λίστα, θα προκληθεί IndexError. Για να το αποφύγετε, ελέγξτε πρώτα αν η λίστα περιέχει στοιχεία:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
if stack:
print(stack.pop())
else:
print("Η στοίβα είναι άδεια")
if stack: print(stack.pop()) else: print("Η στοίβα είναι άδεια")
   if stack:
       print(stack.pop())
   else:
       print("Η στοίβα είναι άδεια")

Σημείωση για Ουρές (Queues)

Μπορείτε επίσης να χρησιμοποιήσετε λίστες για να προσομοιώσετε ουρές (queues), όπου τα στοιχεία προστίθενται στο τέλος και αφαιρούνται από την αρχή, γνωστό ως First-In, First-Out (FIFO). Για την προσομοίωση μιας ουράς, μπορείτε να χρη

σιμοποιήσετε append για προσθήκη στοιχείων και pop(0) για την αφαίρεση του πρώτου στοιχείου. Ωστόσο, η pop(0) είναι λιγότερο αποδοτική σε λίστες, οπότε συνιστάται η χρήση του τύπου δεδομένων deque από το module collections για πιο αποδοτική προσομοίωση ουρών.

12 Ιανουαρίου, 2024
top
error: Content is protected !!
Μετάβαση σε γραμμή εργαλείων