Δεν καταλαβαίνω τι κάνουν και πώς λειτουργούν τα "%s" και "%d".
Χρησιμοποιούνται για τη μορφοποίηση συμβολοσειρών. Το %s
λειτουργεί ως τοποθέτης για μια συμβολοσειρά, ενώ το %d
λειτουργεί ως τοποθέτης για έναν αριθμό. Οι σχετικές τιμές τους περνούν μέσω μιας πλειάδας χρησιμοποιώντας τον τελεστή %
.
name = 'marcog'
number = 42
print '%s %d' % (name, number)
θα εκτυπώσει marcog 42
. Σημειώστε ότι το όνομα είναι μια συμβολοσειρά (%s) και ο αριθμός είναι ένας ακέραιος αριθμός (%d για δεκαδικό).
Ανατρέξτε στο https://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting για λεπτομέρειες.
Στην Python 3 το παράδειγμα θα ήταν:
print('%s %d' % (name, number))
Το %s
χρησιμοποιείται ως χώρος τοποθέτησης για τιμές συμβολοσειράς που θέλετε να εισαγάγετε σε μια μορφοποιημένη συμβολοσειρά.
Το %d
χρησιμοποιείται ως παρέμβλημα για αριθμητικές ή δεκαδικές τιμές.
Για παράδειγμα (για python 3)
print ('%s is %d years old' % ('Joe', 42))
Θα έβγαζε
Joe is 42 years old
Είναι προσδιοριστές μορφής. Χρησιμοποιούνται όταν θέλετε να συμπεριλάβετε την τιμή των εκφράσεών σας στην Python σε συμβολοσειρές, με μια συγκεκριμένη μορφή που επιβάλλεται.
Δείτε το Dive into Python για μια σχετικά λεπτομερή εισαγωγή.