merhaba böyle bir uygulamam var ama düşünüyorum nasıl yapacağımı bir türlü bulamadım imput komutuyala kullanıcıdan bilgi alıp Dictionary içine atmam gerekiyor bu uygulamayı nasıl yapabilirim bir fikri olan varmı
Yapmak istediği şey öğrencileri numarasına göre kaydetmekse doğru yapmışsın işte. Mantığı da şu bak; ogrenciler = { '15': {'ad': 'ali','soyad':'veli'}, '20': {'ad': 'mehmet','soyad':'dldl'}} Her key için ayrı bir dictonary oluşturuyorsun.
Yalnız yazdıgın kodda name yerine number yazmıssın onu düzelt. Print yaparken de mesela bilgisini görmek istediğin öğrencinin numarasını vererek yazdır. print(ogrenciler["15"]) gibi. Numarası 15 olan öğrencinin adının ne oldugunu öğrenmek istersen print(ogrenciler["15"]["ad"]) kullanabilirsin.
Senin öğrenciler dictionary'nin value dediğimiz değer kısmı da bir dictionaryden oluşuyor.
Yani, öğrenci numarası key(Anahtar)'i için, Value kısmı Ad-Soyad-Telefon değerlerini içeren dictionary tutuyor. Aşağı da print kısmında, girilen öğrenci değerine göre, öğrenci ismini bastırıyorsun. Dolayısıyla ilk önce o öğrenci değerine ait value değerlerini bir değişkene(ogrenci) atmışsın. Bu öğrenci'de senin Ad-Soyad-Telefon değerlerini tutuyordu. ogrenci['ad'] şeklinde de ismini çekmişsin. O işaretlediğin kısım bunun için var. ogrenciler['ogrNo']['ad'] ile eş anlamlı aslında.
Kod kısmına type(ogrenci), ogrenci.items() kodlarını yazarak bi incelersen belki mantığına daha fazla oturabilir, dediklerim anlaşılır gelmediyse.
* Bu 3 inputtan sonra dictionary durumu tam olarak bu şekilde olacak.
Daha sonra bir input daha almışsın, bu gireceğin öğrenci numarasının bilgilerini verecek kullanıcıya. Onun için bu Ogrenciler içerisinden bir numara seçiyorsun. Bizim numaralarımız neydi? 120-121-122 * Seçtim ve 122'yi input olarak girdim. * Alt satır | ogrenci = ogrenciler[ogrNo] -> ogrenci = ogrenciler["122"] ---> Bu Ögrenci numarası 122 olan öğrencinin value değerlerini al demek, bizim value değerlerde bir sözlüktü. * Sonuç olarak -> { "ad": "Ece", "Soyad": "Gelen", "Telefon": "555"} bunu almış oldu ve ogrenci değişkenine attı. * print(ogrenci) -> ogrenci adında ki dictionary'i basıcak, onu da bir önceki adımda bulmuştuk.
gerçekden çok teşekkür ederim 1 kaç gündür orayı anlamaya çalışıyorum büyük uğraşla diğer sözlükleri anladım ama son 3 satır beni bir hayli ugraşmışdı gerçekden teşekkürler
a=input("key gir")
b=input("deger gir")
dict[a]=b
Bu mesaja 1 cevap geldi. Cevapları Gizle
< Resime gitmek için tıklayın >
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu mesajda bahsedilenler: @milkomeda
ogrenciler = { '15': {'ad': 'ali','soyad':'veli'},
'20': {'ad': 'mehmet','soyad':'dldl'}}
Her key için ayrı bir dictonary oluşturuyorsun.
ogrenciler["15"]={'ad': 'ali','soyad':'veli'}
ogrenciler["20"]={'ad': 'mehmet','soyad':'dldl'}
Bu da üstteki işle aynı kapıya çıkar.
Yalnız yazdıgın kodda name yerine number yazmıssın onu düzelt.
Print yaparken de mesela bilgisini görmek istediğin öğrencinin numarasını vererek yazdır. print(ogrenciler["15"]) gibi.
Numarası 15 olan öğrencinin adının ne oldugunu öğrenmek istersen print(ogrenciler["15"]["ad"]) kullanabilirsin.
< Bu mesaj bu kişi tarafından değiştirildi milkomeda -- 18 Temmuz 2020; 0:35:15 >
Bu mesaja 1 cevap geldi. Cevapları Gizle
< Resime gitmek için tıklayın >
< Resime gitmek için tıklayın >
< Resime gitmek için tıklayın >
< Bu mesaj bu kişi tarafından değiştirildi layk5t -- 18 Temmuz 2020; 1:22:28 >
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu mesajda bahsedilenler: @milkomeda
Yani, öğrenci numarası key(Anahtar)'i için, Value kısmı Ad-Soyad-Telefon değerlerini içeren dictionary tutuyor. Aşağı da print kısmında, girilen öğrenci değerine göre, öğrenci ismini bastırıyorsun. Dolayısıyla ilk önce o öğrenci değerine ait value değerlerini bir değişkene(ogrenci) atmışsın. Bu öğrenci'de senin Ad-Soyad-Telefon değerlerini tutuyordu. ogrenci['ad'] şeklinde de ismini çekmişsin. O işaretlediğin kısım bunun için var. ogrenciler['ogrNo']['ad'] ile eş anlamlı aslında.
Kod kısmına type(ogrenci), ogrenci.items() kodlarını yazarak bi incelersen belki mantığına daha fazla oturabilir, dediklerim anlaşılır gelmediyse.
Bu mesaja 2 cevap geldi. Cevapları Gizle
Bu mesajda bahsedilenler: @layk5t
ogrNo = input('öğrenci no: ')
ogrenci = ogrenciler[ogrNo]
print(ogrenci)
şu kod satırları benin kafamı karıştırdı daha doğrusu 2 satırdaki kod kafamı karıştırdı
Bu mesajda bahsedilenler: @-TheDifference-
# olan yerler kodlara dahil değil zaten siz bunu biliyorsunuzdur
< Bu mesaj bu kişi tarafından değiştirildi layk5t -- 19 Temmuz 2020; 0:56:8 >
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu mesajda bahsedilenler: @-TheDifference-
Ogrenciler = { "120": { "ad": "Ahmet", "Soyad": "Gelen", "Telefon": "555"}, "121": { "ad": "Mehmet", "Soyad": "Gelen", "Telefon": "556"}, "122" : { "ad": "Ece", "Soyad": "Gelen", "Telefon": "555"}}
* Bu 3 inputtan sonra dictionary durumu tam olarak bu şekilde olacak.
Daha sonra bir input daha almışsın, bu gireceğin öğrenci numarasının bilgilerini verecek kullanıcıya. Onun için bu Ogrenciler içerisinden bir numara seçiyorsun. Bizim numaralarımız neydi? 120-121-122
* Seçtim ve 122'yi input olarak girdim.
* Alt satır | ogrenci = ogrenciler[ogrNo] -> ogrenci = ogrenciler["122"] ---> Bu Ögrenci numarası 122 olan öğrencinin value değerlerini al demek, bizim value değerlerde bir sözlüktü.
* Sonuç olarak -> { "ad": "Ece", "Soyad": "Gelen", "Telefon": "555"} bunu almış oldu ve ogrenci değişkenine attı.
* print(ogrenci) -> ogrenci adında ki dictionary'i basıcak, onu da bir önceki adımda bulmuştuk.
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu mesajda bahsedilenler: @layk5t
Bu mesajda bahsedilenler: @-TheDifference-