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 adresi
Kullanı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:
metin = "Merhaba Dünya!"
anahtar = 3
sifrelenmis_metin = sifrele(metin, anahtar)
print(sifrelenmis_metin) # Çıktı: "Phukded Gxqc!"
orijinal_metin = sifre_coz(sifrelenmis_metin, anahtar)
print(orijinal_metin) # Çıktı: "Merhaba Dünya!"