#Książka telefoniczna z dodatkowym wczytywaniem i zapisywaniem kontaktów w pliku.
import json
from os import system, name
def czysc_ekran():
if name == "nt":
_ = system("cls")
else:
_ = system("clear")
ksiazka_tele = {}
while True:
# Zapytanie o wybranie operacji
operacja = input(
"Wybierz operację do wykonania:\n\
1 - dopisanie pozycji do książki\n\
2 - aktualizacja pozycji książki\n\
3 - usunięcie pozycji książki\n\
4 - wydruk imion z książki\n\
5 - wydruk całej książki telefonicznej\n\
6 - wczytanie json\n\
7 - zapisanie json\n\
8 - koniec programu\nPodaj kod operacji ="
)
if not operacja:
break
# Wykonanie wybranej operacji
if operacja == "1":
czysc_ekran()
print("Wybrano 1")
imie = input("Podaj imię: ")
telefon = input("Podaj numer telefonu: ")
info = input("Podaj dodatkowe informacje: ")
ksiazka_tele[imie] = {"telefon": telefon, "info": info}
print(f"Dodano {imie} z numerem {telefon} i informacjami do książki.")
elif operacja == "2":
czysc_ekran()
print("Wybrano 2")
imie = input("Podaj imię osoby, do aktualizacji numeru telefonu: ")
if imie in ksiazka_tele:
telefon = input("Dodaj nowy numer telefonu:")
info = input("Podaj nowe dodatkowe informacje: ")
ksiazka_tele[imie] = {"telefon": telefon, "info": info}
print(f"Zauktalizowano numer telefonu i informacje dla {imie}.")
else:
print(f"Kontakt o imieniu {imie} nie istnieje.")
elif operacja == "3":
czysc_ekran()
print("Wybrano 3")
imie = input("Podaj imię do usunięcia z książki: ")
if imie in ksiazka_tele:
usuniecie = ksiazka_tele.pop(imie)
print(f"Usunięto kontakt {imie} z książki telefonicznej.")
else:
print(f"Kontakt o imieniu {imie}, nie został usunięty, bo nie istnieje.")
elif operacja == "4":
czysc_ekran()
print("Wybrano 4")
if ksiazka_tele:
print("Imiona w książce: ")
for imie in ksiazka_tele:
print(imie)
else:
print("Książka jest pusta.")
elif operacja == "5":
czysc_ekran()
print("Wybrano 5")
if ksiazka_tele:
print("Cała książka telefoniczna:")
for imie, reszta in ksiazka_tele.items():
telefon = reszta["telefon"]
info = reszta["info"]
print(f"{imie}: {telefon}, {info}")
else:
print("Nie ma żadnych kontaktów.")
elif operacja == "6":
czysc_ekran()
print("Wybrano 6")
with open("ksiazka_tele.json", "r") as plik:
ksiazka_tele = json.load(plik)
print("Wczytano książkę telefoniczną.")
elif operacja == "7":
czysc_ekran()
print("Wybrano 7")
with open("ksiazka_tele.json", "w") as plik:
json.dump(ksiazka_tele, plik)
print("Zapisano książkę telefoniczną do pliku.")
elif operacja == "8":
break
else:
print("\nPodano błędny kod operacji.")
# Koniec programu
print("\nKoniec programu")