Jump to content

Python

  • entries
    66
  • comments
    0
  • views
    25,548

Ek Python Kolaylıkları ( Additional Python Conveniences)


Doğuhan ELMA

217 views

Python'da, kod yazmayı daha basit ve okunabilir hale getiren bir dizi dil kolaylığı bulunmaktadır. İşte bazıları:

Liste Anlamlılığı (List Comprehensions): Liste anlamlılığı, bir listeyi oluşturmak için kullanılan bir dil özelliğidir. Bu özellik, bir for döngüsünün içinde bir ifade kullanarak yeni bir liste oluşturmanın bir yoludur. Örneğin: [x**2 for x in range(10)] ifadesi, kareler listesini oluşturur.

Dictionary Anlamlılığı (Dictionary Comprehensions): Liste anlamlılığına benzer şekilde, Python sözlük anlamlılıkları da sunar: {x: x**2 for x in range(10)} ifadesi, sayıları karelerine eşleyen bir sözlük oluşturur.

Ternary Operatörler (Conditional Expressions): Python, ternary ifade olarak bilinen bir dil kolaylığı sunar. Bu ifadeler, value_if_true if condition else value_if_false şeklinde oluşturulur ve if-else koşullarını daha okunabilir ve tek satırlı hale getirir.

Fonksiyonel Programlama Araçları: Python, map(), filter(), reduce(), lambda gibi fonksiyonel programlama öğeleri de sunar. Bunlar, işlevleri bir liste üzerinde uygulama, bir liste üzerindeki belirli öğeleri filtreleme veya bir liste üzerinde bir işlemi uygulayarak tek bir değer elde etme gibi işlemleri basitleştirir.

Decorators: Python decorators, bir fonksiyonu veya metodu "decore" etmek için kullanılır. Bu, kodun tekrarlanmasını azaltarak daha okunabilir ve daha temiz hale getirebilir.

Generators and yield: Python, bir generator fonksiyonu tanımlamak için yield anahtar kelimesini sunar. Bu, özellikle büyük veri kümeleriyle çalışırken bellek kullanımını optimize eder.

Context Managers (with statement): Python, kaynakları etkin bir şekilde yönetmek için with ifadesini sunar. Bu, genellikle dosyaları açarken veya bir veritabanı bağlantısı oluştururken kullanılır.

Bu özellikler Python'u güçlü ve esnek bir dil haline getirir. Her biri, belirli durumlarda kodun daha etkili ve okunabilir hale gelmesini sağlar.

# Liste Anlamlılığı (List Comprehensions)
squares = [x**2 for x in range(10)]
print(squares)  # çıktı: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

# Dictionary Anlamlılığı (Dictionary Comprehensions)
squares_dict = {x: x**2 for x in range(10)}
print(squares_dict)  # çıktı: {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}

# Ternary Operatörler (Conditional Expressions)
x = 10
print("Even" if x % 2 == 0 else "Odd")  # çıktı: Even

# Fonksiyonel Programlama Araçları
# map(), filter() ve lambda
numbers = [1, 2, 3, 4, 5]
doubles = list(map(lambda x: x * 2, numbers))
print(doubles)  # çıktı: [2, 4, 6, 8, 10]

# Decorators
def my_decorator(func):
    def wrapper():
        print("Something is happening before the function is called.")
        func()
        print("Something is happening after the function is called.")
    return wrapper

@my_decorator
def say_hello():
    print("Hello!")

say_hello()

# Generators and yield
def simple_generator():
    yield 1
    yield 2
    yield 3

for value in simple_generator():
    print(value)

# Context Managers (with statement)
with open('example.txt', 'r') as file:
    content = file.read()
print(content)

 

0 Comments


Recommended Comments

There are no comments to display.

Guest
Add a comment...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...