Δημοσιεύτηκε: 30 Μαρ 2010, 01:22
από kofan
Εχώ μια απορία πάνω στην άσκηση 11.β

Λοιπόν δίνοντας
Κώδικας: Επιλογή όλων
lista11[0:1] = ['πατάτες', lista11[0]]
print (lista11)

παίρνω
Κώδικας: Επιλογή όλων
['πατάτες', 'μήλα', 'αχλάδια', 'αγγούρια', 'μπανάνες', 'ντοματές', 'κιτρόμηλα']


Δίνοντας
Κώδικας: Επιλογή όλων
lista11[0] = ['πατάτες', lista11[0]]

παίρνω
Κώδικας: Επιλογή όλων
[['πατάτες', 'μήλα'], 'αχλάδια', 'αγγούρια', 'μπανάνες', 'ντοματές', 'κιτρόμηλα']


Από ό,τι έχω καταλάβει με το lista[x:y] είναι σα να δηλώνουμε ένα διάστημα μέσα στη λίστα. Όμως το [0] δεν είναι ίδιο ουσιαστικά με το [0:1] αν εξαιρέσουμε το γεγονός ότι το δεύτερο δηλώνει διάστημα(μεταξύ του 0 και 1 δεν υπάρχουν άλλοι ακέραιοι όμως); Αρά γιατί στο lista11[0] δημιουργεί υπολίστα;
Τα φώτα σας σε έναν νέο στο χώρο :)...

Edit:
Μια σκέψη μου είναι πως επειδή με το [x:y] δηλώνουμε ακολουθία (η οποία δεν αποτελείται απαραίτητα όπως στην περίπτωση μου από ένα αντικείμενο) λαμβάνει τα x'('πατάτες') και y'(lista11[0]) ως αντικείμενα της ακολουθίας και όχι ώς ένα αντικείμενο(λίστα) όπως αν είχαμε [χ].

Ελπίζω να γίνομαι κατανοητός. Δε ξέρω να χρησιμοποιώ σωστά και τους όρους(αντικείμενο, ακολουθία κ.λπ.) και ίσως μπερδεύω έτσι...