Bemenet olvasása a billentyűzetről

Befejeződött

Sok program interaktív. Az interaktivitás támogatása azt jelenti, hogy van egy program, amely a bemenettől függően eltérően fut. A programba adatokat bemenő személy általában felhasználó, de lehet egy másik program is. Számos módon küldhet bemenetet egy programnak; két gyakori módszer egy grafikus felületen vagy egy konzolon keresztül.

Felhasználói bevitel

A billentyűzeten bevitt olvasására a Python az input() függvényt kínálja. Az input() beolvassa, és sztringként adja vissza azt, amit a felhasználó a billentyűzeten begépel. Íme egy példa egy személy nevének összefűzésére input() és print() rögzítésére, és a képernyőn való megjelenítésére:

name = input('Enter your name:')
print(name)

A függvénynek argumentumként input átadott sztring az a kérés, amelyet a felhasználó látni fog. Ebben a példában arra kéri a felhasználót, hogy írja be a nevét ("Adja meg a nevét"). Miután a felhasználó begépeli a nevet és lenyomja az Enter billentyűt, az input függvény visszatér. A függvény visszatérési értéke a felhasználó által beírt szöveg, és a szöveg hozzá van rendelve a névvel ellátott nameváltozóhoz. Ezt követően a name függvény bemeneteként vagy argumentumaként használja a print változót, amely a felhasználó által megadott nevet adja ki.

Az input függvény paraméter nélkül is hívható:

print('What is your name?')
name = input()
print(name)

Ez a program szinte ugyanúgy működik, mint az első. Az eltérés az, hogy a print (alapértelmezés szerint) sortörést fűz a kimenethez.

Számok beolvasása

Az input függvény mindig sztringként (szövegként) adja vissza a begépelt értéket. Ennek a választásnak van értelme, mert a felhasználó bármilyen értéket megadhat. Az függvény még akkor is sztring típusúként adja vissza a bemenetet, ha az valóbaninput érvényes számérték. Például:

x = input('Enter a number: ')
print(type(x))

A kód futtatása és az "5" érték megadása akkor is megjelenik <class 'str'>, ha maga az érték numerikus. Az érték tényleges egész típusú változóvá alakítására az int() függvény használható:

x = int(input('Enter a number: '))
print(type(x))

Ez a kód a <class 'int'> kimenetet adja válaszul az „5” bemenő értékre. A float függvény ugyanígy használható akkor, ha törtrésszel rendelkező értéket vár.

Fontos

Mi történik, a nem numerikus értéket adunk át a int() függvénynek? Ahogy várható volt, ez hiba lenne, és futásidejű hibát okozna. A program ebben az utasításban fejeződik be; A Python interaktív konzolján kipróbálhatja magát. Az ilyen hibák kezelésére többféle megoldást is bemutatunk a későbbi modulokban.

Számok sztringekké konvertálása

A másik irány is járható. A str() metódus egy egész vagy lebegőpontos értéket vesz fel, és sztringgé alakítja. str() A metódus meghívására akkor van szükség, ha azt szeretné, hogy az alábbi példakód működjön. Az átalakítás biztosítja, hogy az egész szám sztring formájában összefűzve legyen a bal oldali sztringgel.

x = 5
print('The number is ' + str(x))