Vi kan skrive både tekst og variabler til skjerm

Det er vanlig at resultatet som skrives til skjermen, inneholder både tekst og verdier av variabler. I programmet bruker vi det som kalles f-literal. Vi setter en «f» rett etter venstreparentesen for å fortelle at det kommer en f-literal. Alt som står inni mengdeparenteser i en f-literal, blir tolket som Python-kode. Det vil si at {a} blir tolket som verdien av variabelen \(a\).

Skriv et program i Python som gir variabelen \(a\) verdien \(\displaystyle\frac{34}{11}\) og variabelen \(b\) verdien 1153. Skriv verdiene for \(a\), \(b\) og \(a+b\) til skjerm.

a = 34/11
b = 1153
print(f"Her er a = {a} og b = {b}. Summen er {a + b}.")

Resultatet blir:

Her er a = 3.090909090909091 og b = 1153. Summen er 1156.090909090909.

Avrunding og formatering i utskrift

Når vi vil runde av tallet vi får fra print, bruker vi en f-literal. Rett foran høyre mengdeparentes legger vi inn et kolon. Da kan vi styre hvordan utskriften formateres.

Vi runder av til tre desimaler med formatdefinisjonen «.3f». Her betyr bokstaven «f» at variabelen skal skrives ut med et fiksert antall desimaler, og 3-tallet betyr at det skal være tre desimaler. Hvis vi i stedet skriver «.2f», får vi to desimaler. Avrundingen følger vanlige regler.


a = 34/11
b = 1153
print(f"Her er a = {a:.3f} og b = {b}. Summen er {a+b:.2f}.")
Her er a = 3.091 og b = 1153. Summen er 1156.09.

Hvis vi skriver «.2e», får vi tallet på standardform, med to desimaler:

Avrunding

print(f'a = {a:.3f}')

Standardform

print(f'a = {a:.3e}')
a = 3445/11
print(f"Tallet a er {a:.2e}")
Tallet a er 3.13e+02

Svaret betyr at variabelen \(a\) har verdien \(3{,}13\cdot 10^2\).

Skriv et program der du oppretter en variabel tall med verdien 56, og som skriver ut verdien av variabelen med en svarsetning. Resultatet skal bli:

Verdien av variabelen tall er 56.

Skriv et program som legger verdien \(\displaystyle\frac{11}{7}\) i en variabel og skriver ut verdien av variabelen med to desimaler.