54
Με τη λειτουργία get_input_text ο χρήστης εισάγει τα δεδομένα του στα πεδία του ονόματος
και της ηλικίας. Αν στο πεδίο της ηλικίας δεν εισαχθεί αριθμός, αλλά κείμενο, τότε εμφανίζεται
μήνυμα, το οποίο ενημερώνει τον χρήστη.
Εικόνα 25.Ασφάλεια εισαγωγής ηλικίας
user_name = get_input(screen, font, "Enter your name:")
user_age = get_input(screen, font, "Enter your age:", numeric_only=True)
Αν το numeric_only είναι ίσο με True τότε γίνεται ο διαχωρισμός του ονόματος και της ηλικίας,
όπου μπορεί να καταχωρηθεί μόνο αριθμός.
Αριθμός Ερωτήσεων
Με την add_user_topic_num_settings καταχωρείται στη βάση δεδομένων ο αριθμός των
ερωτήσεων που θέλει να δεχθεί ο χρήστης, ανα θεματική.
def add_user_topic_num_settings(user_id, topics_num_settings):
conn = sqlite3.connect('topics.db')
cursor = conn.cursor()
for topic, num_questions in topics_num_settings.items():
# set the initial_num_questions as equal to num_questions
initial_num_questions = num_questions
cursor.execute('''
INSERT
OR
REPLACE
INTO
user_topics
(user_id,
topic,
num_questions,
initial_num_questions) VALUES (?, ?, ?, ?)
''', (user_id, topic, num_questions, initial_num_questions))
conn.commit()
conn.close()
Επιτρέπεται η επιλογή από 0 έως 10 ερωτήσεων. Αν ο αριθμός ξεπεραστεί ή εισαχθεί μη
αριθμητικός χαρακτήρας, εμφανίζεται μήνυμα, που ενημερώνει το χρήστη για τη σωστή
συμπλήρωση του πεδίου. Το ίδιο συμβαίνει και στην περίπτωση που ο χρήστης δεν εισάγει
αριθμό αλλά οποιοδήποτε άλλο σύμβολο.