Joskus tarvitsemme tekstin muuttamista esimerkiksi numeroksi. Silloin käytämme apuna float()- tai int()-funktiota.
haku = document["teksti1"].value
numeroksi = float(haku)
numeroksi = numeroksi + 5
<!DOCTYPE html> <html lang="en"> <head> <script src="https://www.matikki.fi/guidebook-python/brython/brython380/brython.js"></script> <title>Brython</title> <script type="text/python"> from browser import document, alert def haeTeksti(event): haku = document["teksti1"].value numeroksi = float(haku) numeroksi = numeroksi + 5 document["taulu"].text = numeroksi document['nappi1'].bind("click", haeTeksti) </script> </head> <body onload="brython({debug:1,indexedDB: false})"> <div id="taulu">Jotain tekstiä </div> <input type="button" value="Klikkaa" id="nappi1" /> <br /> <input type="input" value="Anna numero" id="teksti1" /> </body> </html>
Huomaa! Muihin muuttujatyyppeihin muuttavat funktiot ovat mm. str(), int(), float(), bool(), list(), dict() ...
Lisätään edelliseen esimerkkiin väärän arvon käsittely. Toisin sanoen, mitä teemme, jos käyttäjä ei syötäkään numeroa, vaan esimerkiksi kirjaimia.
def haeTeksti(event):
haku = document["teksti1"].value
try:
numeroksi = float(haku)
numeroksi = numeroksi + 5
document["taulu"].text = numeroksi
except:
document["taulu"].text = "Anna numero"
<!DOCTYPE html> <html lang="en"> <head> <script src="https://www.matikki.fi/guidebook-python/brython/brython380/brython.js"></script> <title>Brython</title> <script type="text/python"> from browser import document, alert def haeTeksti(event): haku = document["teksti1"].value try: #testataan numeroksi = float(haku) #muutetaan desimaaliluvuksi numeroksi = numeroksi + 5 document["taulu"].text = numeroksi except: #jos tapahtuu virhe document["taulu"].text = "Anna numero" #ilmoitetaan virheestä document['nappi1'].bind("click", haeTeksti) </script> </head> <body onload="brython({debug:1,indexedDB: false})"> <div id="taulu">Jotain tekstiä </div> <input type="button" value="Klikkaa" id="nappi1" /> <br /> <input type="input" value="Anna numero" id="teksti1" /> </body> </html>
Kirjoita laskin-ohjelma. Sijoita sivulle kaksi tekstikenttää ja napit yhteen-, vähennys-, kerto- ja jakolaskulle. Kirjoita funktiot laskutoimituksille.