• 08-04-2022, 20:11:51
    #1

    Tam olarak neden çalışmıyor ? Input ile keyler eşit ise fiyatını yazdırmak istiyorum.
  • Kabul Edilen Cevap
    • Neden urunler.values() ile dict'in değerlerini yazdırıyorsun (bu bir dizi döndürecektir çünkü)? Bunun yerine urunler[siparis] seklinde dict icinden key ile value döndürebilirsin.
  • 08-04-2022, 20:13:37
    #2
    inputtan veri alıyorsan, input string ifade döndürür, onu int çevirmeniz lazım
  • 08-04-2022, 20:21:57
    #3
    Herhangi bir hata veriyor mu? Bu haliyle eğer ürün sözlükte varsa sözlük yapısının value değerlerinin tamamını yazar. urunler.values() kısmını urunler[siparis] şeklinde değiştirirseniz sadece girilenin fiyatını yazar.
  • 08-04-2022, 20:22:19
    #4
    Bu cevap, konu sahibi tarafından kabul edilebilir bir cevap olarak işaretlendi.
    Neden urunler.values() ile dict'in değerlerini yazdırıyorsun (bu bir dizi döndürecektir çünkü)? Bunun yerine urunler[siparis] seklinde dict icinden key ile value döndürebilirsin.
  • 08-04-2022, 20:30:14
    #5
    aenxious adlı üyeden alıntı: mesajı görüntüle
    Neden urunler.values() ile dict'in değerlerini yazdırıyorsun (bu bir dizi döndürecektir çünkü)? Bunun yerine urunler[siparis] seklinde dict icinden key ile value döndürebilirsin.
    denedim fakat, ekrana çıktı olarak yazdırmıyor hocam bende sorunun ne olduğunu anlamak için tek tek bütün alternatifleri deniyorum. Sanırım yukarıda bahsedildiği gibi str to int yapmam gerekiyor.
    Son edit: Şimdi farkettim, string döndürmesi gerekiyor zaten, keyler string çünkü ? Sorun devam ediyor
  • 08-04-2022, 20:46:22
    #6
    >>> order = 'Bilgisayar'
    >>> products = {'Bilgisayar': 10.00, 'Telefon': 9.00}
    >>> if order in products.keys():
    ...        print('Urun bedeli: ', str(products[order]))
    ...
    Urun bedeli:  10.0
    seklinde kullandiginda hata vermez. str'ye cast etmesen de cikti verir normalde.
  • 08-04-2022, 20:56:30
    #7
    aenxious adlı üyeden alıntı: mesajı görüntüle
    >>> order = 'Bilgisayar'
    >>> products = {'Bilgisayar': 10.00, 'Telefon': 9.00}
    >>> if order in products.keys():
    ...        print('Urun bedeli: ', str(products[order]))
    ...
    Urun bedeli:  10.0
    seklinde kullandiginda hata vermez. str'ye cast etmesen de cikti verir normalde.
    str(products[order] yapınca düzeldi hocam. ben value kısmını string olarak döndürdü sanıyordum... Teşekkürler herkese...
    • aenxious
    aenxious bunu beğendi.
    1 kişi bunu beğendi.