Mini książka kontaktowa z odczytaniem i zapisaniem danych w JSON
Poniżej przedstawiam kod do stworzenia mini książki kontaktowej.
from os import system, name
import json
ksiazka_tele = {}
with open("kontaktowa_utf.json", "r", encoding="UTF-8") as kontakty:
ksiazka_tele = json.load(kontakty)
while True:
operacja = input("""
Wybierz operację do wykonania:
1 - dopisanie pozycji do książki
2 - aktualizacja pozycji książki
3 - usunięcie pozycji książki
4 - wydruk imion z książki
5 - wydruk całej książki telefonicznej
6 - koniec programu
Podaj kod operacji = """
)
if not operacja:
break
if operacja == "1":
print("Wybrano 1 - dopisanie pozycji do ksiazki")
nowe_imie = input("Wpisz imie/nazwe dla nowego wpis: ")
if nowe_imie in ksiazka_tele:
print("---------")
print("Taki kontakt już istnieje.\nJeśli chcesz zaktualizwoać - wybierz 2.\nJeśli chcesz usunąć - wybierz 3. ")
print("---------")
else:
dane_kontaktowe = input("Wpisz numer kontaktowy: ")
ksiazka_tele[nowe_imie] = dane_kontaktowe
elif operacja == "2":
print("Wybrano 2 - aktualizacja pozycji książki")
imie = input("Podaj imie/nazwe: ")
dane_kontaktowe = input("Podaj zaktualizowany numer kontaktowy: ")
ksiazka_tele[imie] = dane_kontaktowe
elif operacja == "3":
print("Wybrano 3 - usunięcie pozycji książki")
imie = input("Podaj imie/nazwe komtaktu do usuniecia: ")
ksiazka_tele.pop(imie)
print("-------------")
print(f"Kontakt {imie} został usunięty")
elif operacja == "4":
print("Wybrano 4 - wydruk imion z książki")
print(ksiazka_tele.keys())
elif operacja == "5":
print("Wybrano 5 - wydruk całej książki telefonicznej")
for imie, wpis in ksiazka_tele.items():
print(f"Imie/nazwa: {imie}")
print(f"Numer kontaktowy: {wpis}")
print("------------------")
elif operacja == "6":
wybor =input("wybrano 6 - koniec programu.\n Czy zapisać zmiany?\n0-NIE\n1-TAK\n")
if wybor == "0":
print("-----------")
print("Wprowadzone zmiany nie zostały zapisane.")
elif wybor == "1":
with open("kontaktowa_utf.json", "w", encoding="UTF-8") as kontakty:
json.dump(ksiazka_tele, kontakty, indent=4, sort_keys=True, ensure_ascii=False)
print("-------------")
print("Wprowadzone zmiany zostały zapisane.")
break
else:
print("\nPodano błędny kod operacji")
print("\nKoniec programu!!!")