Ohjelma kysyy lukua. Sallitut arvot ovat kokonaislukuja nolla ja siitä ylöspäin.
Kuinkas tuohon nyt saa rakennettua ehdon jolla arvoa kysytään uudestaan mikäli käyttäjä onkin syöttänyt vaikkapa kirjaimen tai liukuluvun?
Kun input-lauseelle annettu vastaus tallentuu muuttujaan stringinä. Mikäli muuttujan tyyppi määrittyisi annetun vastauksen perusteella olisi helppoa vain vertailla tyyppejä...
Python ja vertailu
3
271
Vastaukset
- Anonyymi
kuten sanoit, input() palauttaa aina merkkijonon, sinun täytyy itse tarkistaa, onko se muunnettavissa kokonaisluvuksi, ja sitten vielä, että se on vähintään nolla.
Voit käyttää esimerkiksi try-except-rakennetta näin:
python
while True:
vastaus = input("Anna kokonaisluku, joka on vähintään nolla: ")
try:
luku = int(vastaus)
if luku >= 0:
break # kelvollinen syöte, poistutaan silmukasta
else:
print("Luku ei voi olla negatiivinen.")
except ValueError:
print("Et antanut kokonaislukua.")
Tässä:
int(vastaus) yrittää muuntaa syötteen kokonaisluvuksi.
Jos syöte on vaikkapa 5.5 tai abc, se aiheuttaa ValueErrorin ja ohjelma pyytää syötettä uudestaan.
Jos syöte on esimerkiksi -3, muunnos onnistuu, mutta ehdossa huomataan ettei se kelpaa.- Anonyymi
Kiitoksia paljon! :)
- Anonyymi
Anonyymi kirjoitti:
Kiitoksia paljon! :)
Kiitä tekoälyä.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
En minä kyllä enää odota sinua
Olet siellä sen harmaan kanssa. Niin, annoit minun nähdä lämpimät tunteesi siitä huolimatta. Se merkitsi kyllä paljon. O492378Kehutaan vaihteeksi Perussuomalaisia
Perussuomalaiset ovat olleet melkoisen lokakampanjoinnin kohteena, vaikka ovat saaneet paljon hyvää aikaiseksi. Nyt on532157Joka kolmas työtön on työkyvytön
Viime vuonna työnhakuvelvoitteen ulkopuolella oli noin kolmannes työttömistä työnhakijoista. Huhheijaa, mihin suomalais2071676Jos joku luulee että kaikki käy
Sanon vain tämän. Minun kanssani ei neuvotella. Minun kanssani eletään tasavertaisesti. Jos se on liikaa, niin ovi rinn681630- 311614
- 181449
Sakin hivutus - ilmiö
Miten tuollainen tuollainen ilmiö kuin ”sakin hivutus” syntyy? Mitä syitä ilmiön syntymiseen tarvitaan? Onko sakissa jok861394Roiskeläpät takaisin niin alkaa lasit kestämään
"Tuulilaseja hajottava talvi-ilmiö on ehkä ratkennut" Tämän päivän autoissa kun on esimerkiksi vanhempaa autokalustoa s81379Ei ole rohkeutta tulla jututtamaan
Voidaan me nähdä ja tervehtiä, sitäkin harvoin, mutta iso kynnys on edes mennä lähelle ja kysyä kuulumisia. Ymmärrät var81291Julkinen saunatilanne Haapavedellä, tämä on täyttä paskaa!
Eilen Haapaveden uimahallin saunassa koettu tilanne oli täysin käsittämätöntä ja helvetin järkyttävää. Ladyboy harjoitti191284