You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
2.0 KiB
59 lines
2.0 KiB
# 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
|