›_ ebskola.lv
Programmēšana I · 2. tēma · 6 stundas - input() · print() · f-strings

Python pamati // un ievade/izvade

Iemācies nolasīt lietotāja ievadi ar input(), apstrādāt datu tipus un izvadīt formatētus rezultātus ar f-strings. Pirmā interaktīvā programma!

6 stundas str · int · float f-strings projekts 2.6
str · int · float · bool input() · print() PEP 8 · snake_case
# 02 špikeris

2. tēmas špikeris - Python pamati un ievade/izvade

Datu tipi, ievade, matemātika, f-string un koda stils. Katrs bloks atbilst vienai stundai.

2.1-2.2 Ievade un datu tipi

# input() VIENMĒR atgriež tekstu (str) - arī tad, ja ievadi ciparus!
vards = input("Vārds: ")                    # str
punkti = int(input("Punkti: "))             # str -> int
reizinatajs = float(input("Reizinātājs: ")) # str -> float (PUNKTS, ne komats)

# Kāpēc tas ir svarīgi:
a = input("Skaitlis: ")   # ievadi 5
b = input("Skaitlis: ")   # ievadi 5
print(a + b)              # 55   <- teksti tiek SALIKTI kopā
print(int(a) + int(b))    # 10   <- skaitļi tiek SASKAITĪTI

print(type(punkti))       # <class 'int'>

# Biežākās kļūdas
# ValueError: int("desmit")  vai  float("1,5")  -> jālieto punkts: 1.5
# SyntaxError: int(input("Punkti: ")   -> trūkst aizverošā iekava

Ja 5 + 5 dod 55, tu esi aizmirsis int().

2.3 Matemātikas operatori un f-string

17 / 5    # 3.4   parastā dalīšana (vienmēr float)
17 // 5   # 3     veselā dalīšana - cik pilnu reižu ietilpst
17 % 5    # 2     atlikums - kas paliek pāri
2 ** 3    # 8     kāpināšana

# Praktisks piemērs: cik somu vajag?
mantas, ietilpiba = 17, 5
pilnas = mantas // ietilpiba      # 3 pilnas somas
pari   = mantas % ietilpiba       # 2 mantas pāri

# f-string: burts f pirms pēdiņām, mainīgais {figūriekavās}
print(f"Vajag {pilnas} somas un {pari} paliks pāri.")
print(f"Vidēji {mantas / ietilpiba:.1f} somas")   # :.1f = 1 cipars aiz punkta
print(f"Spēks: {limenis ** 2}")                   # var rēķināt iekavās

Bez :.1f dalīšana var dot 3.4000000000000004. Ar to - tīru 3.4.

2.4 Koda stils (PEP 8)

# PAREIZI                          # NEPAREIZI
speletaja_vards = "Anna"           # SpeletajaVards = "Anna"
hp_punkti = 100                    # x = 100
atlikums = hp - jauda              # atlikums=hp-jauda

"""
Programmas apraksts faila sākumā.
"""

# Komentārs saka KĀPĒC, nevis KO
# Slikti: pieskaita 10
# Labi:  jaunam spēlētājam pienākas starta bonuss
kopejie = int(input("Punkti: ")) + 10

# Likumi:
#   mazie burti, vārdus atdala ar _   (snake_case)
#   atstarpes ap operatoriem
#   tukša rinda starp loģiskām daļām
#   vārds pasaka, kas mainīgajā ir

Labs mainīgā vārds ir vērtīgāks par komentāru - komentārs noveco, vārds paliek.

2.5 Plānošana pirms koda

# Katra programma = trīs soļi
# 1. IEVADE   -> ko prasīsim lietotājam
# 2. APSTRĀDE -> ko rēķināsim
# 3. IZVADE   -> ko parādīsim

# Pseidokods pirms koda rakstīšanas:
# 1. Sasveicinies un izskaidro noteikumus
# 2. Iegūt 'vards' (str)
# 3. Iegūt 'speks' (int) un 'veiksme' (float)
# 4. Aprēķināt: rezultats = (speks ** 2) * veiksme
# 5. Parādīt rezultātu ar f-string

# Mainīgo tabula, ko uzraksti PIRMS koda:
#   vards     str    no input()
#   speks     int    no input()
#   veiksme   float  no input()
#   rezultats float  izrēķināts

Formulu pārbaudi ar roku uz trim skaitļiem, pirms raksti visu programmu.

2.6 Noslēguma projekts: viss kopā

# Skaitļu duelītis - 2. tēmas prasmes vienā programmā
# Autors: Vārds Uzvārds

vards = input("Ievadi varoņa vārdu: ")
speks = int(input("Uzbrukuma spēks: "))
veiksme = float(input("Veiksmes koeficients: "))

# Spēka kvadrāts padara stiprus varoņus manāmi pārākus
rezultats = (speks ** 2) * veiksme

print(f"{vards} duelī iegūst {rezultats:.1f} punktus!")

# Pārbaudi ar roku: speks=5, veiksme=1.2 -> 25 * 1.2 = 30.0

Iesniedzot: mainīgie snake_case, atstarpes ap operatoriem, viens jēdzīgs komentārs, fails GitHub.

› vards = input("Kā tevi sauc? ") # Python ievada pirmais solis