List Comprehension #2 - Python Dersleri (Tutorials)

in #blog7 years ago

kapak.jpg

Merhabalar

Python programlama derslerine "List Comprehension" kavramı üzerinden devam ediyoruz. "List Comprehension", özetle otomatik olarak liste oluşturma şeklidir.

List Comprehension'un genel yazımı aşağıdaki gibidir :

Bu yapı aslında iki bölümden oluşur : "expression" kısmı ve for döngüsü

"expression" olarak geçen kısım bir formül olabileceği gibi bir değişken de olabilir. for döngüsünü zaten biliyoruz.

Mantığı ise şu şekilde : "expression" olarak geçen formülsü işlem, "sequence" olarak geçen dizisel yapının her elemanı için hesaplanıp yeni bir dizi oluşturulur.

Şimdi de uygulamasını görelim :

Uygulamada myList adında bir liste tanımladık. Liste içerisinde

item for item in range(5,10)

şeklinde bir ifade yer alıyor. İlk olarak ifadenin for döngüsü kısmına bakalım :

for item in range(5,10)

ifadesi ile oluşan döngü, 5'ten 10 kadar olan sayılar içerisinde gezinir. Ancak buna 10 dahil değildir. Yani biz bu döngünün içine bir print() metodu koysaydık:

5
6
7
8
9

şeklinde sayıları yazdırmış olurdu. for döngüsü sonunda bir dizi oluşturduğumuzu düşünürsek oluşacak dizi

[5,6,7,8,9]

şeklinde olurdu. Şimdi biraz önceki ifademize tekrar dönelim:

item for item in range(5,10)

ifadesindeki baş kısımda verilen item, for döngüsünde oluşan her bir liste elemanını temsil ettiğinden myList ile oluşturulacak liste aşağıdaki gibi olacaktır :

Liste oluşturmanın temel mantığı bu şekildedir. Genel yapıdaki expression ile ifade edilen kısım bu örneğimizde bir döngü değişkeni oldu.

"expression" ifadesi bazen bir formül de olabilir. Şimdi aşağıdaki uygulamaya bakalım :

Uygulamamızda for döngüsü ile oluşan dizi aşağıdaki gibidir :

[5,6,7,8,9]

"expression" kısmındaki formülsel kısım ise

(item * 2) + 1

şeklindedir. Bu iki ifadeyi birleştirdiğimizde; döngü ile oluşan dizinin her bir elemanını al, 2 ile çarp ve 1 ekle demektir.

5 elemanını alalım : (5 * 2 ) + 1= 11'dir. Oluşacak dizinin ilk elemanı bu şekilde hesaplanmıştır. Diğerleri de aynı şekilde hesaplanır ve yeni oluşan dizi aşağıdaki gibi olur :

Şimdilik bu kadar.

Umarım faydalı bir çalışma olmuştur.

Teşekkürler.

yesilayrca.png

Kaynak belirtilmeyen görseller bana aittir. The pictures without source in the post is belong to me

Sort:  

(5 * 2 ) + 1= 11'dir. Oluşacak dizinin ilk elemanı bu şekilde hesaplanmıştır.

Bunu paytoncuk hesapladıysa kendisini tebrk ediyorum, doğru hesaplamış. Maşallah Payton büyüyor da neler neler biliyor. Çarpmayı öğrenmiş, toplamayı öğrenmiş. Duygularını da sanırım artık daha iyi express edebiliyor. ;))

Vay be :) Demi hocam gelişim diye buna denir :) Teşekkür ederim değerli yorum ve desteğiniz için, iyi ki varsınız.

You got a 88.41% upvote from @minnowvotes courtesy of @elektroyazilim!

Coin Marketplace

STEEM 0.05
TRX 0.33
JST 0.079
BTC 63413.52
ETH 1669.67
USDT 1.00
SBD 0.41