1 changed files with 59 additions and 0 deletions
@ -0,0 +1,59 @@ |
|||||
|
# 1. část funkce |
||||
|
def pridej_poznamku(poznamky,autor,text): |
||||
|
"""Přidá novou poznámku (slovník) do seznamu""" |
||||
|
nova = { |
||||
|
"autor":autor, |
||||
|
"text":text, |
||||
|
"dulezita":False |
||||
|
} |
||||
|
poznamky.append(nova) |
||||
|
|
||||
|
def zobraz_poznamky(poznamky): |
||||
|
"""Vypíše všechny poznámky. Duležité oznáčí [!]""" |
||||
|
if len(poznamky) == 0: |
||||
|
print("Žádné poznámky") |
||||
|
return |
||||
|
for i,pozn in enumerate(poznamky): |
||||
|
znacka = " [!]" if pozn["dulezita"] else "" |
||||
|
print(f"[{i+1}.] {pozn['autor']}:{pozn['text']}{znacka}") |
||||
|
|
||||
|
def oznac_duleziou(poznamky,cislo): |
||||
|
"""označí poznámku jako důležitou. Vrací True/False podle úspěchu""" |
||||
|
if 1<=cislo<=len(poznamky): |
||||
|
poznamky[cislo-1]["dulezite"] = True |
||||
|
return True |
||||
|
return False #return ukončuje def (funkci), proto můžeme napsat return false bez else |
||||
|
|
||||
|
def uloz_do_souboru(poznamky,nazev_souboru): |
||||
|
"""Uloží poznámky do textového souboru (formát: autor|text|True/False)""" |
||||
|
with open(nazev_souboru,mode="w",encoding="utf-8") as f: |
||||
|
for pozn in poznamky: |
||||
|
# | = AltGR + W |
||||
|
radek = f"{pozn['autor']}|{pozn['text']}|{pozn['dulezita']}\n" |
||||
|
f.write(radek) |
||||
|
print(f"Zloženo {len(poznamky)} poznámek do {nazev_souboru}") |
||||
|
|
||||
|
def nacti_ze_souboru(nazev_souboru): |
||||
|
"""Načte poznámky zer souboru a vráti je jako seznam (pole) slovníků.""" |
||||
|
poznamky = [] |
||||
|
try: |
||||
|
with open(nazev_souboru,mode="r",encoding="utf-8") as f: |
||||
|
for radek in f: |
||||
|
casti = radek.strip().split("|") |
||||
|
if len(casti) == 3: |
||||
|
poznamka = { |
||||
|
"autor":casti[0], |
||||
|
"text":casti[1], |
||||
|
"dulezita":casti[2] == "True" |
||||
|
} |
||||
|
poznamky.append(poznamka) |
||||
|
print(f"načteno {len(poznamky)} poznámek") |
||||
|
except FileNotFoundError: |
||||
|
print("Soubor nenalezen, začíname s prázným seznamem.") |
||||
|
return poznamky |
||||
|
|
||||
|
# 2. část hlavní (funkce) programu |
||||
|
|
||||
|
|
||||
|
|
||||
|
# 3. spuštění hlavního programu |
||||
Loading…
Reference in new issue