Ce face input()
input() afișează mesajul din prompt, așteaptă ca utilizatorul să tasteze ceva și să apese Enter, apoi returnează textul tastat (fără Enter-ul de la final).
Rezultatul este întotdeauna un șir de caractere (str), chiar dacă utilizatorul a tastat un număr. Pentru calcule, transformă-l cu int() sau float().
Parametri
| Parametru | Descriere |
|---|---|
prompt |
Opțional. Textul afișat înainte de citire, de obicei o întrebare. |
Ce returnează
Textul tastat, ca str. Dacă intrarea se termină (Ctrl+D), apare excepția EOFError.
Exemple
Exemplul 1: Citirea unui nume
nume = input("Cum te numești? ")
print(f"Salut, {nume}!")
Rezultat (utilizatorul tastează Ana)
Cum te numești? Ana
Salut, Ana!
Exemplul 2: Citirea unui număr
Textul citit trebuie transformat în număr înainte de calcul.
an = int(input("În ce an te-ai născut? "))
print("Ai", 2026 - an, "de ani.")
Rezultat (utilizatorul tastează 2000)
În ce an te-ai născut? 2000
Ai 26 de ani.
Exemplul 3: Verificarea intrării
Dacă utilizatorul tastează ceva ce nu este număr, int() aruncă ValueError. O prinzi cu try.
text = input("Câte bucăți? ")
try:
bucati = int(text)
print("Ai cerut", bucati, "bucăți.")
except ValueError:
print(f"„{text}” nu este un număr întreg.")
Rezultat (utilizatorul tastează trei)
Câte bucăți? trei
„trei” nu este un număr întreg.
Greșeli frecvente
- Aduni direct rezultatul:
input() + 1dăTypeError, pentru căinput()returnează text. Foloseșteint(input()). - Compari cu un număr:
if input() == 5nu este niciodată adevărat, pentru că"5" != 5.
Comenzi înrudite
print(): Afișează unul sau mai multe texte sau valori pe ecran.int(): Tipul numerelor întregi; int() transformă un text sau un număr zecimal în număr întreg.try / except / else / finally: Prinde și tratează erorile (excepțiile), ca programul să nu se oprească brusc.