13 - Alıştırmalar
2024
Kullanıcıdan bir e-posta adresi girmesini isteyin. Girilen e-posta adresini @ işaretine göre ikiye bölün. İlk parçayı kullanıcı adı, ikinci parçayı ise alan adı olarak iki ayrı değişkene atayın. Eğer e-posta adresinde @ işareti yoksa veya birden fazla @ işareti varsa, kullanıcıya “Geçersiz e-posta adresi” mesajı gösterin. Son olarak, kullanıcı adını ve alan adını ekrana yazdırın.
İpuçları:
input() fonksiyonunu kullanın.split() metodunu kullanın.@ karakterinin olup olmadığını ve sayısını kontrol etmek için in operatörü ve count() metodunu kullanın.if-elif-else) ile farklı durumları ele alın.Örnek Girdi/Çıktı:
E-posta adresinizi girin: [email protected]
Kullanıcı adı: test
Alan adı: example.com
E-posta adresinizi girin: gecersiz_email
Geçersiz e-posta adresi
E-posta adresinizi girin: test@example@com
Geçersiz e-posta adresiKullanıcıdan bir metin dosyasının adını girmesini isteyin. Dosyayı satır satır okuyarak aşağıdaki istatistikleri hesaplayın ve ekrana yazdırın:
Eğer dosya bulunamazsa, kullanıcıya “Dosya bulunamadı!” mesajı gösterin.
open() veya with open() kullanın.for döngüsü ve readlines() veya readline() metodunu kullanın.split() metodunu kullanın.try-except bloklarını kullanın.len() fonksiyonu ile stringlerin ve listelerin uzunluğunu bulabilirsiniz.max() ve min() fonksiyonlarını bir döngü içerisinde kullanarak en uzun ve en kısa satırları bulabilirsiniz.Film bilgilerini (adı, yönetmeni, yılı, türü) içeren bir sözlük yapısı oluşturun. Her film için, film adını anahtar, diğer bilgileri ise iç içe sözlük olarak değer olarak saklayın. Örnek:
Kullanıcıya aşağıdaki seçenekleri sunan bir menü oluşturun:
input() fonksiyonu ile kullanıcıdan girdi alın.try-except) kullanarak geçersiz girdi durumlarını ele alın.Ahmet,70,80,90
Mehmet,60,75,85
Ayşe,90,95,100
split() metodu ile satırları parçalara ayırabilirsiniz.float() veya int() ile stringleri sayıya dönüştürebilirsiniz.try-except blokları ile hata yakalama işlemlerini yapmayı unutmayın.round() fonksiyonunu kullanarak ondalık basamak sayısını ayarlayabilirsiniz.with open(...) as ... yapısını kullanarak dosyaları otomatik olarak kapatabilirsiniz.Örnek notlar.txt içeriği:
Ahmet,70,80,90
Mehmet,60,75,85
Ayşe,90,95,100
ortalama.txt dosyasının içeriği:
Ahmet,80.00
Mehmet,73.33
Ayşe,95.00
calisanlar = [
{"isim": "Ahmet", "departman": "İnsan Kaynakları", "maas": 5000},
{"isim": "Mehmet", "departman": "Bilgi İşlem", "maas": 7000},
{"isim": "Ayşe", "departman": "İnsan Kaynakları", "maas": 6000},
{"isim": "Fatma", "departman": "Pazarlama", "maas": 6500},
{"isim": "Ali", "departman": "Bilgi İşlem", "maas": 7500}
]Bilgi İşlem departmanında çalışanların isimlerini ve maaşlarını ekrana yazdırın.Kullanıcıdan bir metin dosyası adı girmesini isteyin. Dosyayı okuyarak aşağıdaki bilgileri hesaplayın ve sonuc.txt adlı bir dosyaya yazdırın:
İpuçları:
upper() veya lower() metotlarını kullanabilirsiniz.split() metodunu kullanın.sorted() fonksiyonunu ve lambda ifadelerini kullanabilirsiniz.Aşağıdaki görevleri yerine getiren fonksiyonlar yazın:
kare_al(sayi_listesi): Bir sayı listesi alır ve her sayının karesini içeren yeni bir liste döndürür.tek_sayilari_filtrele(sayi_listesi): Bir sayı listesi alır ve sadece tek sayıları içeren yeni bir liste döndürür.en_buyuk_uc(sayi_listesi): Bir sayı listesi alır ve listedeki en büyük 3 sayıyı içeren yeni bir liste döndürür.ortalama_ustu(sayi_listesi): Bir sayı listesi alır ve bu listedeki sayıların ortalamasından büyük olan sayıları içeren yeni bir liste döndürür.Daha sonra, kullanıcıdan virgülle ayrılmış sayılar girmesini isteyen ve bu sayıları bir listeye dönüştüren bir ana program yazın. Ana program, yukarıda tanımladığınız fonksiyonları sırasıyla çağırarak sonuçları ekrana yazdırsın.
İpuçları:
def anahtar kelimesini kullanın.input() ve split() ile kullanıcıdan alınan string’i sayı listesine dönüştürebilirsiniz.int() ile string’i tam sayıya dönüştürün.map(), filter() ve lambda fonksiyonlarını kullanmayı düşünün.sort() veya sorted() fonksiyonlarını kullanabilirsiniz.[:3] gibi) kullanabilirsiniz.İki kişilik bir taş-kağıt-makas oyunu yazın. Oyun, 5 tur oynansın.
İpuçları:
if-elif-else) kullanın.input() ile kullanıcıdan girdi alın.if veya elif kullanabilirsiniz. Ya da bir sözlükte olası kombinasyonları tanımlayabilirsiniz.ord() ve chr() fonksiyonlarını kullanarak harflerin ASCII kodlarına erişebilir ve üzerinde işlem yapabilirsiniz.% operatörü) kullanarak alfabeyi döngüsel olarak düşünebilirsiniz.Örnek: