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.")