Python - zajęcia 7

Python - zajęcia 7
  • Szyfrowanie
    • symetryczne
    • asymetryczne
  • F-cja skrótu

Zadania


✏️
Książka telefoniczna
# dane kontaktowe (dowolne - tel, / email)
# dodawanie, aktualizacja, usuwanie
# wybor dziwnego wariantu

kontakty = {"Alice": "[email protected]",
            "Bob": "[email protected]"
            }


# Dodawanie wpisu
# === 1 ===
def dodawanie_kontaktu():
    pseudonim = input("Podaj pseudonim:\n")
    if pseudonim in kontakty.keys():
        print("Kontakt istnieje. kolejnym razem podaj inny pseudonim")
    else:
        dane_kontaktowe = input("Podaj dane kontaktowe:\n")
        kontakty[pseudonim] = dane_kontaktowe
        print(
            "\n\n[i]\nDodano do kontaktów nowy wpis\n")


# Aktualizacja wpisu
# === 2 ===
def aktualizacja_wpisu():
    # Wyszukiwanie po nazwie
    szukany_pseudonim = input(
        "Podaj nazwę konktaktu, który chcesz zaktualizować:\n")
    if szukany_pseudonim in (kontakty.keys()):
        # Zakładam, że użytkownik może chcieć zmienić albo nazwę albo dane kontaktowe.
        czy_zmiana_nazwy = input("Chcesz zmienić nazwę? (T/N)\n")
        if czy_zmiana_nazwy == "T":
            nowy_pseudonim = input("Podaj nową nazwę:\n")
            kontakty[nowy_pseudonim] = kontakty.pop(szukany_pseudonim)
            print(
                "\n\n[i]\nZmieniono nazwę kontaktu\n")
        else:
            czy_zmiana_danych = input(
                "Chcesz zmienić dane kontaktowe? (T/N)\n")
            if czy_zmiana_danych == "T":
                nowe_dane = input("Podaj nowe dane:\n")
                kontakty[szukany_pseudonim] = nowe_dane
                print("\n\n[i]\nZaktualizowano wpis\n")
    else:
        print("Nie znaleziono kontaktu o tej nazwie.")


# Usunięcie wpisu
# === 3 ===
def usuniecie_wpisu():
    szukany_pseudonim = input("Podaj nazwę konktaktu, który chcesz usunąć:\n")
    if szukany_pseudonim in (kontakty.keys()):
        print("Czy na pewno chcesz usunąć kontakt? (T/N)\n")
        # decyzja = input()
        # if decyzja == 'T':
        #     kontakty.pop(szukany_pseudonim)
        #     print(f"\n\n[i]\nUsunięto wpis z kontaktów\n")
        for pseudonim, dane_kontaktowe in kontakty.items():
            if pseudonim == szukany_pseudonim:
                print(f"{pseudonim}: {dane_kontaktowe}")
        decyzja = input()
        if decyzja == 'T':
            kontakty.pop(szukany_pseudonim)
            print(
                "\n\n[i]\nUsunięto wpis z kontaktów\n")

    else:
        print("\n[X]\nNie znaleziono kontaktu o tej nazwie.")


# Wydruk wszystkich kontaktow
# === 4 ===
def wydruk_wszystkich_kontaktow():
    for pseudonim, dane_kontaktowe in kontakty.items():
        print(f"{pseudonim}: {dane_kontaktowe}")
    print("\n")


# Wydruk wybranego kontaktu
# === 5 ===
def wydruk_wybranego_kontaktu():
    szukany_pseudonim = input("Podaj szukaną nazwę kontaktu:")

    if szukany_pseudonim in (kontakty.keys()):
        for pseudonim, dane_kontaktowe in kontakty.items():
            if pseudonim == szukany_pseudonim:
                print(f"{pseudonim}: {dane_kontaktowe}")
    else:
        print("Nie znaleziono kontaktu o tej nazwie.")


while True:
    print("Książka kontaktowa:")
    print("Wybierz operację:")
    print("1 - dodanie wpisu")
    print("2 - aktualizacja wpisu")
    print("3 - usunięcie wpisu")
    print("4 - wydruk wszystkich kontaktów")
    print("5 - wydruk konretntego kontaktu")
    print("6 - koniec programu")

    wybor = input("Podaj kod operacji: ")

    if wybor == "1":

        print("""
              
              ===== Dodanie wpisu =====
              """)
        dodawanie_kontaktu()

    elif wybor == "2":
        print("""
              
              ===== Aktualizacja wpisu =====
              """)
        aktualizacja_wpisu()
    elif wybor == "3":
        print("""
              
              ===== Usunięcie wpisu =====
              """)
        usuniecie_wpisu()
    elif wybor == "4":
        print("""
              
              ===== Wydruk wszystkich kontaktów =====
              """)
        wydruk_wszystkich_kontaktow()
    elif wybor == "5":
        print("""
              
              ===== Wydruk danych kontaktu =====
              """)
        wydruk_wybranego_kontaktu()
    elif wybor == "6":
        print("Koniec programu")
        break
    else:
        print("Nie ma opcji o podanym kodzie.")