İPUCU

Python Artificial Intelligence’da en çok kullanılan dildir ve gerekli dökümanların paylaşım alanlar burada paylaşılmaktadır.

Seçenekler

Python Veri Yapıları (List – Dictionary) / DERS 4

K K
K K - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
06/2017
Nereden:
Deep Web
Mesajlar:
110
Konular:
30
Teşekkür (Etti):
9
Teşekkür (Aldı):
7
Ticaret:
(0) %
07-06-2017 17:13
#1
Python Veri Yapıları (List – Dictionary) / DERS 4
Önceki yazılarımızda bilgisayarımıza Anaconda yükleyerek Python geliştirmeye hazır hale geldik, temel değişken tanımlama ve kod akış yöntemlerini (if else) öğrendik ve döngülerden bahsettik. Bu yazımızda Python üzerinde en çok kullanılan iki veri yapısını inceleyeğiz. Bunlar list (liste) ve dictionary (sözlük).


list

Aslında list veri yapısı ile range komutunun kullanımı sırasında tanıştık ancak şimdi kendimiz bir list oluşturup, nasıl kullanıldığını göreceğiz. list veri tipi, içerisinde birden çok farklı veri tipini barındırabilen çoklu bir veri yapısıdır yani tam sayı, ondalıklı sayı, karakter, metin, başka bir list barındırabilir.



list0 = [5,10,2,"test",["another","child","list"],10.9]
print "Number of elements in list0 is", len(list0)
list0.append("element added with append")

for element in list0:
print element #every element is printed in order

print "Number of elements in list0 is", len(list0)
list0.pop(3) #third element (test) is removed from list
print "Number of elements in list0 is", len(list0)



Yukarıda yazdığımız kodun çıktısı aşağıda bulunmakta. Bu kod ile “list0” isminde bir liste tanımladıktan sonra içerisine sırasıyla tam sayı, tam sayı, tam sayı, metin, liste, ondalıklı sayı tipinde elemanlar atıyoruz ve print komutu ile eleman sayımızı yazdırıyoruz (len fonksiyonunu kullanarak). Sonrasında “list0″‘a append fonksiyonu ile yeni bir eleman ekliyoruz ki bu listenin en sonuna ekleniyor. Ardından “for” döngüsü ile “list0” içerisinde bulunan tüm elemanları yazdırıyoruz. Sırasıyla güncel eleman sayımızı yazdırıyoruz, 3. sıradaki elemanı çıkarıyoruz (eleman sıraları 0-1-2-3 diye gitmekte) ve yeni eleman sayımızı yazdırıyoruz (bir eleman çıkardığımız için azalıyor).

Number of elements in list0 is 6
5
10
2
test
['another', 'child', 'list']
10.9
element added with append
Number of elements in list0 is 7
Number of elements in list0 is 6



dictionary

Dictionary veri yapısı gelişmiş programlama dillerinde karşımıza HashTable olarak çıkıyor. Temelinde telefon defteri gibi çalışan Dictionary, her bir anahtar değer için, karşılık değeri saklamaktadır. Telefon defterinizde “Fuat Akgün” isminde kayıtlı birisi olduğunu düşünün ve karşılığında “0123654789” telefon numarası yazdığını varsayın. Bu yapıda anahtar (key) değerimiz “Fuat Akgün” olurken, bu anahtarın karşılığında değerimiz (value) telefon numarasını olmakta. Aşağıda konuyla ilgili örnek kodumuz bulunuyor.




phoneBook = {}
phoneBook["Fuat Akgun"] = "0123654789" #adding elements to phoneBook
phoneBook["Kemal Yonca"] = "0564789211"
phoneBook["Hasan Koç"] = "0951753647"

print "Number of records in phone book is", len(phoneBook)
for name in phoneBook.keys():
print name, ":", phoneBook[name]

if phoneBook.has_key("Fuat Akgun"):
print "Fuat Akgun has a record in phone book"
else:
print "Fuat Akgun has no record in phone book"

if phoneBook.has_key("Kemal Tanca"):
print "Kemal Tanca has a record in phone book"
else:
print "Kemal Tanca has no record in phone book"

del phoneBook["Fuat Akgun"]
print "Number of records in phone book is", len(phoneBook) #because we deleted Fuat Akgun from phoneBook



Yukarıda yazdığımız kodun çıktısı aşağıda bulunmakta. Kodumuz akış olarak öncelikle phoneBook isminde bir boş dictionary tanımlıyor, ardından içerisinde 3 adet kişiyi ve telefon numaralarını ekliyor ve phoneBook içerisindeki bu kişileri ekrana yazdırıyor.
Sonrasında ise phoneBook üzerinde arama işlemleri yapıyoruz phoneBook.has_key(key) fonksiyonu bize bir anahtar değerin daha önce dictionarye eklenip eklenmediği bilgisini veriyor.
Son olarak da phoneBook dictionarysi üzeirnden bir kayıt siliyoruz ve kalan eleman sayımızı tekrardan yazdırıyoruz.

Number of records in phone book is 3
Hasan Koç : 0951753647
Fuat Akgun : 0123654789
Kemal Yonca : 0564789211
Fuat Akgun has a record in phone book
Kemal Tanca has no record in phone book
Number of records in phone book is 2





EVET ARKADASLAR BUGUNKU EGITIMIMIZDE BITTI
DEVAMI GELECEK

ARKADASLAR BASLIKLARI BIR SITEDEN BULDUM YAZILARIDA ONA GORE YAZIYORUM....


» K K «

▶ FαrKℓıℓıK αуηαdαKi уαηѕıмα dєğiℓ; уαηѕıмαηıη içiηdє ѕαKℓı σℓαη νicdαηdır.
Konu K K tarafından (07-06-2017 17:24 Saat 17:24 ) değiştirilmiştir.
Ayberk25 - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
04/2016
Nereden:
c:/
Mesajlar:
328
Konular:
38
Teşekkür (Etti):
87
Teşekkür (Aldı):
19
Ticaret:
(0) %
07-06-2017 21:03
#2
ELLERİNE SAĞLIK ama forumda bu tür konular oldukça fazla bunlar yerine bir proje yapsan daha güzel olur hatta sen ben başkaları birleşir büyük bir proje yapabiliriz ama tabiki senin fikrin istediğini yap
--------------------- %20 c++
%80 web hack
%90 python
%100 TÜRK

Defacer Name: InFlames
K K
K K - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
06/2017
Nereden:
Deep Web
Mesajlar:
110
Konular:
30
Teşekkür (Etti):
9
Teşekkür (Aldı):
7
Ticaret:
(0) %
07-06-2017 22:26
#3
Tabıkıde olur Süper hatta.
Instagram: kkofficial90
OmerFarukHan - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
03/2017
Nereden:
Sinop
Mesajlar:
1.615
Konular:
34
Teşekkür (Etti):
101
Teşekkür (Aldı):
126
Ticaret:
(0) %
07-06-2017 22:31
#4
Eline sağlık
--------------------- 2019 Dönüş Vakti Olacak.
K K
K K - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
06/2017
Nereden:
Deep Web
Mesajlar:
110
Konular:
30
Teşekkür (Etti):
9
Teşekkür (Aldı):
7
Ticaret:
(0) %
07-06-2017 23:11
#5
Sağolun devamı gelecek inşallah

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler

Yetkileriniz
Sizin Yeni Konu Acma Yetkiniz var yok
You may not post replies
Sizin eklenti yükleme yetkiniz yok
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodları Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı