AMP Analytics -->

Teknoloji Rehberi

29 Nisan 2025 Salı

Python'da Stringler (Dizeler)

 

Python'da Stringler (Dizeler) - Ayrıntılı Anlatım

Python'da stringler (dizeler), karakter dizilerini temsil eden veri tipidir. Tek tırnak ('), çift tırnak (") veya üç tırnak (''' veya """) içine yazılabilirler.

1. String Oluşturma

python
Copy
Download
# Tek tırnak ile
str1 = 'Merhaba Dünya'

# Çift tırnak ile
str2 = "Python Programlama"

# Üç tırnak ile (çok satırlı stringler için)
str3 = """Bu bir
çok satırlı
string örneğidir"""

2. String Özellikleri

  • Değiştirilemez (Immutable): Bir string oluşturulduktan sonra değiştirilemez.

    python
    Copy
    Download
    s = "python"
    s[0] = "P"  # Hata verir: TypeError
  • Dizi Gibi Davranır: Stringler karakter dizileridir ve dizi gibi indekslenebilir.

    python
    Copy
    Download
    s = "python"
    print(s[0])  # 'p'
    print(s[-1]) # 'n' (son karakter)

3. String İşlemleri

a) Birleştirme (Concatenation)

python
Copy
Download
s1 = "Merhaba"
s2 = "Dünya"
print(s1 + " " + s2)  # "Merhaba Dünya"

b) Çoğaltma (Repetition)

python
Copy
Download
s = "Python "
print(s * 3)  # "Python Python Python "

c) Uzunluk (Length)

python
Copy
Download
s = "Python"
print(len(s))  # 6

4. String Dilimleme (Slicing)

python
Copy
Download
s = "Python Programlama"

print(s[0:6])    # "Python" (0'dan 6'ya kadar, 6 dahil değil)
print(s[7:])     # "Programlama" (7'den sona kadar)
print(s[:6])     # "Python" (baştan 6'ya kadar)
print(s[-10:-1]) # "Programla" (sondan 10. karakterden sondan 1. karaktere)
print(s[::2])    # "Pto rgalm" (ikişer atlayarak)
print(s[::-1])   # "amalmargorP nohtyP" (ters çevirme)

5. String Metodları

a) Büyük/Küçük Harf Dönüşümü

python
Copy
Download
s = "Python"

print(s.upper())   # "PYTHON"
print(s.lower())   # "python"
print(s.capitalize()) # "Python"
print(s.title())   # "Python"

b) Arama ve Kontrol Metodları

python
Copy
Download
s = "Python Programlama"

print(s.startswith("Py"))  # True
print(s.endswith("ma"))    # True
print("Pro" in s)         # True
print(s.find("Pro"))      # 7 (bulunduğu indeks)
print(s.index("Pro"))     # 7 (find gibi ama bulamazsa hata verir)
print(s.count("a"))       # 3 (kaç tane 'a' var)

c) Karakter Kontrol Metodları

python
Copy
Download
print("123".isdigit())    # True
print("abc".isalpha())    # True
print("abc123".isalnum()) # True
print("  ".isspace())     # True
print("Python".islower()) # False
print("PYTHON".isupper()) # True

d) Düzenleme Metodları

python
Copy
Download
s = "   Python   "

print(s.strip())      # "Python" (baştaki ve sondaki boşlukları siler)
print(s.lstrip())     # "Python   " (soldaki boşlukları siler)
print(s.rstrip())     # "   Python" (sağdaki boşlukları siler)
print("py-th-on".split("-"))  # ['py', 'th', 'on'] (bölme)
print(" ".join(["Python", "Rocks"]))  # "Python Rocks" (birleştirme)
print("python".replace("p", "P"))  # "Python"

e) Formatlama

python
Copy
Download
# Eski yöntem (% operatörü)
print("Merhaba %s" % "Dünya")

# format() metodu
print("{} {}".format("Merhaba", "Dünya"))
print("{1} {0}".format("Dünya", "Merhaba"))  # Sıralama değiştirme

# f-string (Python 3.6+)
ad = "Python"
print(f"Merhaba {ad}")  # "Merhaba Python"
print(f"3 kere 5: {3*5}")  # "3 kere 5: 15"

6. Özel Karakterler (Escape Sequences)

python
Copy
Download
print("Bu bir\nsatır atlama")  # \n yeni satır
print("Tab\tkarakteri")       # \t tab
print("Ters slash \\")        # \\ ters slash
print('Tek tırnak \'')       # \' tek tırnak
print("Çift tırnak \"")      # \" çift tırnak

7. Raw Stringler

Özel karakterleri yorumlamadan olduğu gibi kullanmak için:

python
Copy
Download
print(r"C:\new\folder")  # "C:\new\folder" (\n satır atlamaz)

8. Unicode ve Stringler

Python 3'te stringler varsayılan olarak Unicode'dur:

python
Copy
Download
print("こんにちは")  # Japonca merhaba
print("😊")        # Emoji

9. String Kodlama/Çözme

python
Copy
Download
# Bytes'a çevirme
s = "Python"
b = s.encode('utf-8')  # b'Python'

# String'e çevirme
s2 = b.decode('utf-8')  # 'Python'

Stringler Python'da çok yönlü ve güçlü bir veri tipidir. Metin işleme, veri analizi, dosya okuma/yazma gibi birçok alanda yoğun olarak kullanılırlar.

Hiç yorum yok:

Yorum Gönder

Popular Posts