Tümü Bir Arada
Coddy'nin Python Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 23 / 78.
Görev
KolayArtık Contact Book için tüm bağımsız işlevleri oluşturduğuna göre, bunları bir araya getirerek tam programı oluşturmanın zamanı geldi!
Görevin:
- Oluşturduğun işlevleri birleştir:
display_menu: Kullanıcı için menü seçeneklerini görüntüler.add_contact: Contact Book'a yeni bir kişi ekler.view_contact: Belirli bir kişinin ayrıntılarını görüntüler.edit_contact: Mevcut bir kişinin bilgilerini günceller.delete_contact: Contact Book'tan bir kişiyi kaldırır.list_all_contacts: Contact Book'taki tüm kişileri görüntüler.
- Kişileri saklamak için
contact_bookadlı bir sözlük oluştur. - Şunları yapan bir döngü yaz:
display_menukullanarak menüyü görüntüler.- Menü seçimi için kullanıcı girdisini kabul eder.
- Kullanıcının seçimine göre uygun işlevi çağırır.
- Kullanıcı geçerli menü seçeneklerinden biri olmayan bir seçim girerse
Invalid choice. Please try again.yazdırır. - Kullanıcı programdan çıkma seçeneğini seçene kadar devam eder.
Beklenen Davranış:
Programı çalıştırdığında şunları yapmalıdır:
- Kullanıcının seçebileceği seçeneklerden oluşan bir menü gösterir.
- Uygun işlevi çağırarak kullanıcının Contact Book ile etkileşim kurmasına olanak tanır.
- Kullanıcı tanınmayan bir seçenek girdiğinde Geçersiz seçim. Lütfen tekrar deneyin. yazdırır.
- Kullanıcı "Çıkış" seçeneğini seçtiğinde programdan düzgün bir şekilde çıkar.
Bu son adım, öğrendiğin tüm bilgileri tam işlevli bir Contact Book uygulamasında bir araya getirir. Emeğinin bir araya geldiğini görmekten keyif al! 🎉
Kendin dene
def display_menu():
print("Contact Book Menu:")
print("1. Add Contact")
print("2. View Contact")
print("3. Edit Contact")
print("4. Delete Contact")
print("5. List All Contacts")
print("6. Exit")
def add_contact(contact_book):
name = input()
if name in contact_book:
print("Contact already exists!")
return
phone = input()
email = input()
address = input()
contact_book[name] = {"phone": phone, "email": email, "address": address}
print("Contact added successfully!")
def view_contact(contact_book):
name = input()
if name in contact_book:
contact = contact_book[name]
print(f"Name: {name}")
print(f"Phone: {contact['phone']}")
print(f"Email: {contact['email']}")
print(f"Address: {contact['address']}")
else:
print("Contact not found!")
def edit_contact(contact_book):
name = input()
if name in contact_book:
phone = input()
email = input()
address = input()
if phone == '':
phone = contact_book[name]['phone']
if email == '':
email = contact_book[name]['email']
if address == '':
address = contact_book[name]['address']
contact_book[name] = {"phone": phone, "email": email, "address": address}
print("Contact updated successfully!")
else:
print("Contact not found!")
def delete_contact(contact_book):
name = input()
if name in contact_book:
del contact_book[name]
print("Contact deleted successfully!")
else:
print("Contact not found!")
def list_all_contacts(contact_book):
if not contact_book:
print("No contacts available.")
else:
for name, details in contact_book.items():
print(f"Name: {name}")
print(f"Phone: {details['phone']}")
print(f"Email: {details['email']}")
print(f"Address: {details['address']}")
print() # Blank line between contacts for readability
Mantık ve Akış bölümündeki tüm dersler
1Değişken Keşfi
SabitlerÇoklu Değişken AtamalarıDeğişken TakasıYer Tutucu DeğişkenlerSayıları YuvarlamaListe Tür Dönüşümü4Rehber Uygulaması
Menüyü GörüntüleKişi Ekle7Kümeler Bölüm 2
Matematiksel İşlemler Bölüm 1Matematiksel İşlemler Bölüm 2Özet - Hazine AvıAlt Kümeler ve Üst KümelerKümeler Üzerinde YinelemeÖzet - Turnuva Takipçisi10Temel List Comprehension Yapıları
SözdizimiBasit Listeler OluşturmaKoşul EklemeVeri Toplulaştırma KullanımıÖzet - Liste EviÖzet - Özgürlük Elementleri13Envanter Yönetim Sistemi
Projeye Genel BakışÖğe Ekle2Sözlükler Bölüm 1
Sözlük Nedir?Sözlük OluşturmaDeğerlere ErişmeSözlükleri DeğiştirmeÖzet - Tarif Yöneticisi5İleri Seviye Karar Yapıları
Ternary OperatörüÜyelik KontrolleriKimlik KontrolleriGirintileme HatalarıÖzet - Tatil Filtresi8Öğrenci Kayıt Yöneticisi
Projeye Genel BakışÖğrenci Ekle11İleri Seviye Fonksiyonlar
Birden Fazla Değer DöndürmeLambda Fonksiyonları Bölüm 1Lambda Fonksiyonları Bölüm 2Tekrar Görevi - Lambda ile SıralamaÖzyinelemeli Fonksiyonlar Bölüm 1Özyinelemeli Fonksiyonlar Bölüm 2Tekrar - İç İçe Listeleri Toplama14Yüksek Mertebeden Fonksiyonlar
Map FonksiyonuFilter FonksiyonuÖzet - E-posta DoğrulayıcıÖzet - Sayı İşleyici3Sözlükler Bölüm 2
Sözlük Metotlarıİç İçe SözlüklerAnahtar KontrolüSözlüklerde DöngülerÖzet - Frekans Sayacı9İleri Düzey Veri Toplulaştırma
Toplam KullanımıMinimum ve Maksimumu BulmaVerileri Verimli SıralamaÖzet - Dictionary SıralayıcıKendi başına pratik yap: Online Python derleyicisi