Get started learning Python with DataCamp's free Intro to Python tutorial. Learn Data Science by completing interactive coding challenges and watching videos by expert instructors. Start Now!
This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join 11 million other learners and get started learning Python for data science today!
Good news! You can save 25% off your Datacamp annual subscription with the code LEARNPYTHON23ALE25 - Click here to redeem your discount
Syöte ja tuloste
Interaktiivisessa ohjelmoinnissa syötteen ottaminen ja tulostuksen näyttäminen vaaditulla tavalla on tärkeää. Keskitymme siis eri tietotyyppien syötteeseen ja tulosteeseen.
raw_input()
Tätä käytetään ottamaan syöte, kunnes saavutetaan rivin loppu. Huomaa, että välilyöntejä ei tulisi olla. Syötteen ottaminen päättyy uudella rivimerkillä, ja jos syöterivillä on välilyöntejä, se aiheuttaa virheen.
# Tulostaa saamaansa syötteen stdin:istä
astring=raw_input()# anna syötteeksi hello
print raw_input()
Syötteen ottamisen jälkeen voimme muuttaa ne tarvittavaksi tietotyypiksi käyttäen funktioita, kuten int(), float(), str().
num=int(raw_input())
print num
decimalnum=raw_input()
decimalnum=float(raw_input()
print decimalnum
input()
Tätä käytetään erityisesti syöttämään kokonaislukuja. input():n etu raw_input():n yli voidaan selventää seuraavan esimerkin avulla.
#anna syötteeksi 2*2
a=input()
b=raw_input() #huomaa, että int(raw_input()) aiheuttaa virheen
print a #tulostaa 4
print b #tulostaa 2*2
Kuinka ottaa kaksi tai useampaa tietotyyppiä syötteeksi yhdeltä riviltä välilyönneillä erotettuna?
Käytämme tässä split()- ja map()-funktioita.
#anna kaksi kokonaislukua ensimmäiselle riville ja useampi kuin kaksi kokonaislukua kolmannelle riville
a, b = map(int, raw_input().split())
array = raw_input().split()
sum = 0
for each in array:
sum = sum + int(each)
print(a, b, sum) # tulostaa ensimmäisen rivin kaksi ensimmäistä kokonaislukua ja toisen rivin kokonaislukujen summan
Tulosteen formatointi
Olet ehkä jo huomannut, että print-lauseke lisää automaattisesti uuden rivin. Yllä olevan koodin kaltaisen pilkun käyttö tulostaa arvot yhdelle riville välilyönnillä erotettuna. Sys-moduuli tarjoaa erilaisia funktioita tulosteen formatointiin, mutta opettelemme täällä, kuinka käyttää perustietoa formatoinnista tulostukseen haluamallamme tavalla. Katsotaanpa muutama esimerkki oppiaksemme tulosteen formatointia.
a = 5
b = 0.63
c = "hello"
print "a is : %d, b is %0.4f,c is %s" % (a,b,c)
Tulosteen on oltava itsestään selvä.
Exercise
Kirjoita ohjelma, joka pyytää käyttäjää syöttämään nimensä, ikänsä ja maansa. Ohjelman tulisi sitten tulostaa viesti, joka sisältää tämän tiedon lauseessa. Ohjelman tulisi sisältää:
- Nimen ottaminen syötteeksi käyttämällä
raw_input()
. - Iän ottaminen syötteeksi käyttämällä
input()
, ja muuntamalla se kokonaisluvuksi. - Maan nimen ottaminen syötteeksi käyttämällä
raw_input()
. - Tulosteen formatointi näyttämään lauseen, joka sisältää nimen, iän ja maan.
Ohjelman tulisi osoittaa syötteen käsittelyä ja merkkijonon formatointia Pythonissa.
# Taking the name input using raw_input()
name = raw_input("Enter your name: ")
# Taking the age input using input() and converting it to integer
age = int(input("Enter your age: "))
# Taking the country input using raw_input()
country = raw_input("Enter your country: ")
# Displaying the formatted sentence with name, age, and country
print("Hello, my name is {}, I am {} years old, and I am from {}.".format(name, age, country))
# Taking the name input using raw_input()
name = raw_input("Enter your name: ")
# Taking the age input using input() and converting it to integer
age = int(input("Enter your age: "))
# Taking the country input using raw_input()
country = raw_input("Enter your country: ")
# Displaying the formatted sentence with name, age, and country
print("Hello, my name is {}, I am {} years old, and I am from {}.".format(name, age, country)) name is {}, I am {} years old, and I am from {}.".format(name, age, country))
Enter your name: John
Enter your age: 25
Enter your country: USA
Hello, my name is John, I am 25 years old, and I am from USA.
This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join over a million other learners and get started learning Python for data science today!