0Pricing
Python Academy · Ders

Globlama ve Yineleme

Glob örüntüleriyle dosya bulun

Globlama ve Yineleme, CoddyKit'te ücretsiz bir Python Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Python Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Python Academy kursu toplamda 4 dersten oluşur.

Dosyaları Bulma

pathlib, dizin içeriklerini listelemeyi ve bir desenle eşleşen dosyaları aramayı kolaylaştırır. Temel yöntemler iterdir, glob ve rglob'dur.

Örnek Bir Ağaç Oluşturma

Bu yöntemleri incelemek için önce küçük bir dosya dizini oluşturacağız. Bu kurulum yalnızca standart kütüphaneyi kullanır.

from pathlib import Path

root = Path('sample')
root.mkdir(exist_ok=True)
(root / 'a.txt').write_text('1')
(root / 'b.txt').write_text('2')
(root / 'c.log').write_text('3')
print('created files')

iterdir İçerikleri Listeler

iterdir(), bir dizinin doğrudan içindeki her girdiyi, her öğe için bir Path olacak şekilde üretir.

from pathlib import Path

root = Path('sample')
for entry in sorted(root.iterdir()):
    print(entry.name)

Bir Desenle glob

glob(), kabuk stili bir desenle eşleşen girdileri bulur. * joker karakteri, herhangi bir karakter dizisini eşleştirir.

from pathlib import Path

root = Path('sample')
for txt in sorted(root.glob('*.txt')):
    print(txt.name)

Tek Karakterlik Joker

? joker karakteri tam olarak bir karakterle eşleşir; sabit uzunluktaki adlar için kullanışlıdır.

from pathlib import Path

root = Path('sample')
for m in sorted(root.glob('?.txt')):
    print(m.name)

Karakter Aralıkları

Köşeli ayraçlar, kabuk glob işleminde olduğu gibi bir kümedeki veya aralıktaki herhangi bir tek karakterle eşleşir.

from pathlib import Path

root = Path('sample')
for m in sorted(root.glob('[ab].txt')):
    print(m.name)

rglob ile Özyinelemeli glob

rglob(), bir dizini ve tüm alt dizinlerini arar. glob('**/pattern') ile eşdeğerdir.

from pathlib import Path

root = Path('sample')
(root / 'nested').mkdir(exist_ok=True)
(root / 'nested' / 'deep.txt').write_text('x')
for m in sorted(root.rglob('*.txt')):
    print(m)

Eşleşmeleri Sayma

Glob sonuçları yineleyicilerdir. Eşleşmeleri saymak veya yeniden kullanmak için birini list() içine alın.

from pathlib import Path

root = Path('sample')
txts = list(root.rglob('*.txt'))
print('found', len(txts), 'text files')

Yineleme Sırasında Filtreleme

Sonuçları kesin olarak filtrelemek için glob işlemini is_file veya is_dir denetimleriyle birleştirin.

from pathlib import Path

root = Path('sample')
files = [p for p in root.iterdir() if p.is_file()]
for f in sorted(files):
    print(f.name)

Bulunan Dosyaları İşleme

Eşleşmeleri elde ettikten sonra her dosyayı okuyabilirsiniz. Burada ağaçtaki her metin dosyasının içeriğini topluyoruz.

from pathlib import Path

root = Path('sample')
total = 0
for p in root.rglob('*.txt'):
    text = p.read_text().strip()
    if text.isdigit():
        total += int(text)
print('total:', total)

Glob Sonuçlarını Sıralama

Glob belirli bir sıralamayı garanti etmez. Örneğin bir rapor oluştururken tutarlı bir çıktı gerektiğinde sonuçları sorted() içine alın.

from pathlib import Path

root = Path('sample')
for p in sorted(root.glob('*'), key=lambda x: x.name):
    print(p.name)

Hızlı Kontrol

glob ile rglob arasındaki fark nedir?

Özet

Glob desenleriyle dosya bulmayı öğrendiniz.

  • iterdir doğrudan içeriği listeler.
  • glob bir desenle eşleşir (*, ?, [...]).
  • rglob özyinelemeli arama yapar.
  • Glob işlemini is_file/is_dir filtreleriyle birleştirip eşleşmeleri okuyun.

Sıkça Sorulan Sorular

“Globlama ve Yineleme” dersi ücretsiz mi?

Evet — “Globlama ve Yineleme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Python Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Python Academy kursu toplamda 4 dersten oluşur.

“Globlama ve Yineleme” dersinde ne öğreneceğim?

Glob örüntüleriyle dosya bulun Python Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Python Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Python Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Globlama ve Yineleme” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Python Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Python Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Path Nesnesi
  2. Dosya Okuma ve Yazma
  3. Globlama ve Yineleme
  4. Yol İşleme
← Python Academy Sayfasına Dön