migf1 έγραψε:Ilias95 έγραψε:1.Δεν τρέχεις καμία συνάρτηση (στην python). 2.Και να έτρεχες το κακό που είναι;
Αυτό μου δημιουργεί μια απορία εμένα. Είναι εγγυημένο πως θα γίνει το swap;
Αν δεν είναι, τότε πως ελέγχεις αν προέκυψε κάποιο σφάλμα; Εξετάζεις π.χ. το 1ο στοιχείο μιας από τις 2 λίστες πριν και μετά την εναλλαγή;
Δεν καταλαβαίνω την απορία. Θεωρώ ότι είναι τόσο εγγυημένο, όσο το ότι η print('hello world') θα εκτυπώσει 'hello world' στην οθόνη.
Αφού είναι λειτουργία της γλώσσας. Από κει και πέρα αν κάτι πάει λάθος είναι bug της ίδιας της γλώσσας (της οποιασδήποτε γλώσσας).
Δεν το θεωρώ λογικό να ελέγχεις το κάθε τι που κάνεις. Νομίζω ότι αυτά θεωρούνται δεδομένα.
Έτσι τα βλέπω εγώ τουλάχιστον. Αν κάνω λάθος, διόρθωσε με.
Edit:
Πάντως γενικώς στην python είναι εύκολο να βεβαιωθείς για κάτι πριν περάσεις σε κάτι άλλο.
Πχ. στην αρχή μίας συνάρτηση που καλείς με το όρισμα number μπορείς να βεβαιωθείς ότι ο number θα είναι θετικός με:
- Κώδικας: Επιλογή όλων
assert number > 0, 'number must be positive'
Αν η βεβαίωση αποτύχει τότε θα υψωθεί assertion error και το πρόγραμμα θα σταματήσει επιτόπου, εκτυπώνοντας το μήνυμα που περνάς μαζί με το Error και που αυτό συνέβη.
Μπορείς να δημιουργήσεις δικές σου εξαιρέσεις επίσης αν δεν θες να χρησιμοποιήσεις την assert.