List Comprehensions
List Comprehensions, liste yapmanın farklı bir yoludur. Bu farklı yaklaşımla, for döngüsünü ilk örnekten tek bir kod satırında yeniden yazabilirsiniz,
hadi gelin bir kaç örnekle bu işi anlamaya çalışalım...
MyList = [1, 2, 3, 4, 4, 5, 6, 7, 7]
CikisList = []
for var in MyList:
if var % 2 == 0:
CikisList.append(var)
print("Çıkış listemiz: ", CikisList)
"
Çıkış listemiz: [2, 4, 4, 6]
"
yukarda bir örneğimizi görüyorsunuz bu olayı for döngümüzle kıyaslayalım...
for x in range(10):
print(x)
numbers =[x for x in range(10)]
print(numbers)
yukardaki iki örneğin cevapları aynıdır...
Aşağıda yine benzer bir kıyaslama yapalım..
for x in range(10):
print(x**2)
numbers = [x**2 for x in range(10)]
print(numbers)
Örnek yelpazemizi geliştirelim. Ne kadar fazla örnek o kadar iyidir.
myString = 'Hello'
myList = []
for letter in myString:
myList.append(letter)
print(myList)
Yukarda ve aşağıdaki örneğin sonucu aynı ama kullanılan yöntem farklı istediğimiz yöntemi de kullanabiliriz.
myString = 'Hello'
myList = []
myList = [letter for letter in myString]
print(myList)
Son bir örnekle bu işi bitirelim...
years = [1997,1983,1999,2005]
ages = [2020-year for year in years]
print(ages)
"
[23, 37, 21, 15]
"
Umarım bu konuyuda anlamışsınızdır.
Kaynakça:
https://python-3-patterns-idioms-test.readthedocs.io
Sadık Turan
www.geeksforgeeks.org
0 Yorumlar