Ακολουθίες
Ερώτηση. Δώστε παραδείγματα ακολουθιών τα οποία έχουμε δει μέχρι τώρα. [Απάντηση: συμβολοσειρές, πλειάδες, λίστες.]
Ας θεωρήσουμε ότι στο όνομα μεταβλητής seq
έχουμε είτε μία συμβολοσειρά, είτε μία πλειάδα, είτε μία λίστα.
Τότε μπορούμε να χρησιμοποιήσουμε τις ακόλουθες εντολές.
seq[i]
: i-οστό στοιχείο ακολουθίας.len(seq)
: μήκος ακολουθίας.seq1 + seq 2
: συνένωση ακολουθιών.n*seq
: επαναλαμβανόμενη ακολουθία.seq[αρχη:τελος:βημα]
: τεμαχισμός ακολουθίας.στοιχειο in seq
: boolean.στοιχειο not in seq
: boolean.for μεταβλητη in seq
: διατρέχει τα στοιχεία ακολουθίας.
len(ακολουθια)
: ο αριθμός των στοιχείων ακολουθίας.min(ακολουθια)
: το ελάχιστο στοιχείο ακολουθίας.max(ακολουθια)
: το μέγιστο στοιχείο ακολουθίας.
ακολουθια.index(στοιχειο)
: η θέση της πρώτης εμφάνισης του στοιχείου στην ακολουθία.ακολουθια.index.count(στοιχειο)
: αριθμός εμφανίσεων του στοιχείου στην ακολουθία.
Συμβολοσειρές και μέθοδοι Αν s είναι μία συμβολοσειρά, έχουμε τις μεθόδους:
s.index(s1)
: θέση του s1 στην s.s.lower(), s.upper()
: μετατρέπει όλους τους χαρακτήρες σε πεζούς ή κεφαλαίους.s.replace(old,new)
:s.rstrip()
: αφαιρεί τους κενούς χαρακτήρες από το τέλος της s.s.split(d)
: χωρίζει την s όπου υπάρχει το d και παράγει μία λίστα με το αποτέλεσμα.
Παράδειγμα. Ας διαβάσουμε σειρά αριθμών από το πληκτρολόγιο.
>>> line = input("Give numbers separated by comma: ")
Give numbers separated by comma: 1.2, 2.3, 3.14, 6
>>> strList = line.split(',')
>>> strList
['1.2', ' 2.3', ' 3.14', ' 6']
>>> numList = []
>>> for e in strList:
numList.append(float(e))
>>> numList
[1.2, 2.3, 3.14, 6.0]
επίσης
numList = [float(e) for e in strList]
επίσης
numList = map(float,strList)
list(numList)
Ερώτηση. Πώς θα τροποποιούσατε το παραπάνω πρόγραμμα ώστε να διαβάζει μία σειρά αριθμών οι οποίοι διαχωρίζονται μόνο με κενά μεταξύ τους;
Δείτε επίσης και τις μεθόδους:
s.capitalize()
s.center(πλατος), s.ljust(πλατος[,χαρακτήρας]), s.rjust(πλατος[,χαρακτήρας])
s.endwith(σειμβολοσειρα), s.startwith(συμβολοσειρα)
s.find(σειμβολοσειρα), s.rfind(σειμβολοσειρα)
s.join(ακολουθία)
s.partition([χαρακτήρας])
s.isalpha()
s.isdigit()
s.isnumeric()
Μελέτη
Βιβλιογραφία
- J.V. Guttag, Υπολογισμοί και προγραμματισμός με την python (Κεφάλαιο 5).
- Δημήτριος Καρολίδης, Μαθαίνετε εύκολα python (Παράγραφοι 4.1, 4.2) (Εκδόσεις Καρολίδη, 2016).
- Κ. Μαγκούτης, Χ. Νικολάου, Εισαγωγή στον αντικειμενοστραφή προγραμματισμό με Python, (Αποθετήριο "Κάλλιπος", 2016) - Κεφάλαιο 6. Συμβολοσειρές, λίστες, πλειάδες, λεξικά.