materiálzdrojpoznámky
Pracovní list – základy prog. v jazyce PythonDOCX
PDF
proměnná, seznam, cyklus, funkce

Vypsání hodnoty

print("Dnes je krásný den")

Vypsání více hodnot na jeden řádek

#vícenásobnému přiřazení hodnot říkáme unpacking
print(1, 2, 3)
print("Karel","Jarda","Franta")
print(10.2,111.3,12.456)

Řetězce a získání části řetězce

Řetězce se dávají do úvozovek.

#určení délky řetězce - funkce LEN()
a=len("toto je muj text")
print (a)
#-----------------------------------
text=input("zadej text:")
print(len(text))
#-----------------------
slovo = 'Python' 
print(slovo[0])  
print(slovo[-6]) 
#----------------------
slovo = 'Python' 
print(slovo[-1]) 
print(slovo[0:2])
print(slovo[1:])
print(slovo[:2])
print(slovo[-2:]) 
print(slovo[:1] + slovo[2:])
print(slovo[1:-1])
print(slovo[:])

Proměnná a její výpis

#Symbolické jméno uchovávající určitou informaci.

#Stačí jen zadat jméno a přiřadit hodnotu
#Není potřeba deklarovat předem ani určovat typ
#Nelze deklarovat proměnou bez přiřazení hodnoty
#Jednou definovaná proměnná v rámci skriptu stále uchovává stejnou hodnotu
moje_cislo=56
print(moje_cislo)
c = "Praha"
print(c)
a = input()
print(a)
#víceslovné názvy oddělujeme podtržítkem
moje_oblibene_cislo = 42
print(moje_oblibene_cislo)

Do názvu proměnné nelze zadávat rezervovaná slova. Jsou to slova například: and, not, for, while, else, import,…

Vstup konzole – input()

a = input()
print(a)
#input se vstupní hláškou
a = input("Strana: ")
print(a)
#input s hláškou a omezení na typ integer
a = int(input("Strana: "))
print(a*a)

Logické hodnoty (bool)

pravda = True
nepravda = False
print(pravda, nepravda)
#-----------------------------------
print (bool(1==1))
print (bool(1>10))
print(bool(1<10))
#! znamená nerovná se
print(bool(1!=10))
#porovnání čísel
a=10
b=10
print(bool(a==a))
#porovnání řetězců
a="ahoj"
b="ahoj"
print(bool(a==b))

Operátory přiřazení

a = 1
b = a + 1
print(b)
#-------------------------
a, b, c = 1, 2, 3
print(a, b, c)
#Do proměnných a,b,c přiřaďte hodnoty ahoj, 10, 20.23 a následně je vypište.
a, b, c = "ahoj", 10, 20.23
print(a, b, c)

Mocniny

#druhá mocnina
print (2**2)
#třetí mocnina
print (2**3)

Import funkci, objeku, modulu

Pokud chceme použit něco, co není součástí standartního balíčku, pak musíme provést import. Například Python nezná konstantu pi, ta je v modulu math. Modul math obsahuje metody a konstanty ZDE

import math
print (math.pi)
#-----------------------
from math import pi
print(pi)
#------------------------
import math
a=10
print (math.sin(a))

Obsah a obvod čtverce pomocí funkce

def ctverec(a):
    print("obsah", a*a)
    print("obvod", 4*a)

ctverec(5)

Výpis násobků čísla pomocí funkce

def nasobek(cislo):
    print("dvojnasobek", cislo*2)
    print("ctyrnasobek", n*4)
    print("dvacetinasobeknasobek", n*20)

nasobek(5)

Výpis mocnin čísla pomocí funkce

def mocnina(n):
    print(n, "na druhou je", n*n)
    print(n, "na treti je", n*n*n)
    print(n, "na ctvrtou je", n*n*n*n)

mocnina(8)

Na kolik pokusů uhádneš náhodné číslo?

import random
cislo = (random.randint(1,10))
cislo_2 = 0
name = input("Zadej svoje jméno ")
pokusy = 0

while cislo != cislo_2:
        cislo_2 = int(input("Vložte prosím číslo od 1 do 10 "))
        if cislo > cislo_2:
            print("číslo které hádáš je větší")
        elif cislo == cislo_2:
            print()
        elif cislo < cislo_2:
            print("číslo které hádáš je menší")
        pokusy = pokusy + 1

print("Gratuluji " + name + " uhodl/a jsi číslo")
print("uhodl/a jsi to na " + str(pokusy) + " pokusů")

Vytvoř vlastní funkci

  1. Zapiš funkci, která se bude jmenovat „prumer“ a která bude počítat průměr ze zadaných 5 známek z libovolného předmětu.
  2. Zapiš funkci, která se bude jmenovat „prumerna_rychlost“ a která bude počítat průměrnou rychlost ze zadané dráhy a celkového času. Průměrná rychlost se vypočítá jako v=s/t.
  3. Zapište funkci, která bude počítat celkovou cenu vstupenek do kina. Cena vstupenek je v kině stanovena na:
    • dětská……85,-
    • dospělá….150,-
    • senior…70,-

V programu zadejte vždy určitý počet vstupenek pro dítě, dospělého i seniora. Vypočítejte celkovou cenu za hromadnou vstupenku. V ceně vstupenky se také zahrne následující:

  • pokud bude celková cena větší než 1000,-, obdržíte slevu 20%
  • celková cena pak bude nižší právě o 20%“

Výpis hodnoty ze seznamu

Vytvořte seznam a ze seznamu vypište jednu hodnotu.

postavy=["Harry Potter","Hermiona Grangerová","Ronald Weasley"]
print(postavy[0])
#jiný příklad
nápoje = ("mléko","džus","voda")
print(nápoje [2])

Náhodný výpis ze seznamu

import random
auta = ["škoda", "audi", "bugatti","seat","opel","volvo","ford","mazda","toyota"]

print(auta[random.randrange(0,8)])

Vytvoř funkci, která bude ze seznamu vypisovat hodnotu

Vašim úkolem bude vytvořit funkci, která po zavolání vypíše jednu hodnotu ze seznamu hodnot.

ovoce = [„jablko“, „banán“, „třešeň“]
def vypis():
print(ovoce[2])
vypis()

Vytvoř funkci, která bude ze seznamu vypisovat hodnotu zadanou uživatelem

a=int(input(„zadej cislo“))
ovoce = [„jablko“, „banán“, „třešeň“]
def vypis():
print(ovoce[a])
vypis()

Věk

Vytvořte program v Pythonu, který bude ze zadaného roku narození a roku úmrtí počítat dožitý věk osoby.

rok_narozeni = int(input(„Zadej rok narození“))
rok_umrti = int(input(„Zadej rok úmrtí“))

print („Osoba se dožila věku“)
print (rok_umrti-rok_narozeni)
print („roků“)

Výpis hodnot ze seznamu

Vytvořte program, který bude vypisovat pomocí cyklu všechny hodnoty z pole. Pole bude mít 4 hodnoty.

mesta = ["praha","brno","ostrava","hradec kralove"]

vypis=0

while vypis<4:

    print(mesta[vypis])
    vypis+=1

Výpočet hustoty látky

Napište program, který bude počítat hustotu tělesa, pokud bude zadaná hmotnost a objem. Hmotnost a objem se bude vkládat náhodně z určitého rozsahu.

import random

m= random.randrange(1,20000)
V= random.randrange(1,20)
ρ= m/V

print ("těleso má hmotnost",m,"kg")

print(type(m))
print ("těleso má objem",V,"m³")
print(type(V))
print ("těleso má hustotu",ρ,"kg/m³")
if ρ>700:
    print("Hustota je vyšší než hustota dřeva.")
else:
    print("Hustota je nižší než hustota dřeva.")

Výpočet hustoty látky – varianta 2

#Program počítající hustotu s náhodně vybranými číslicemi + nekonečný program
import random
import time

i = 0

while(True):
    i += 1
    print("Příklad")
    print(i)
    time.sleep(1)
    print()
    m = random.randrange(1,20000)  
    V = random.randrange(1,1000)
    ro = m/V

    print("hmotnost tělesa je",m,"kg")
    print(type(m))
    time.sleep(2)
    print("objem tělesa je",V,"m³")
    print(type(V))
    time.sleep(2)

    
    print("hustota tělesa je",ro,"kg/m³")
    time.sleep(2)

    if ro > 700:
        print("Hustota je vyšší než hustota dřeva")
    elif ro < 700:
        print("Hustota je menší než hustota dřeva")
    elif ro == 700:
        print("Hustota je 700 kg/m³")
    else:
        print("ERROR")
    print()
    print("-------------------------")
    time.sleep(1)

Výpočet hustoty látky – varianta 3

print("Zadejte hmotnost předmětu (v kg):")
m=float(input())
print(type(m))
print("Zadejte objem předmětu (v m3):")
V=float(input())
print(type(V))
Ro=m/V
print("Hustota předmětu je:",Ro,"kg/m3")
if Ro<=700:
    print("hustota předmětu je menší než hustota dřeva.")
else:
    print("hustota předmětu je větší, než hustota dřeva.")

Čtení ze souboru

Napište program v programovacím jazyce Python, který bude číst záznamy ze souboru emaily.txt.

#je třeba otevřít soubor a přečíst jej
#soubor musí být ve stejné složce jako program, případně jej #vložte do jiné složky a změňte cestu k souboru
soubor = open("emaily.txt", "r")
print(soubor.read())
soubor.close()

Zápis do souboru a čtení ze souboru

Napište program v programovacím jazyce Python, který bude zapisovat do souboru „kontakty.txt“ jméno a příjmení žáka a následně ze souboru všechny jména bude číst.

soubor = open("kontakty.txt", "a")
name = str(input("Napište kontakt"))
if(soubor.write(name +",")):
    print("kontakt se zapsal")
soubor.close()

#dále otevře soubor a přečte jej
soubor = open("kontakty.txt", "r")
print(soubor.read())