Bir cümledeki en uzun kelimeyi ve uzunluğunu döndür.
Birden fazla aynı uzunlukta kelime varsa ilkini döndür.
Not: Sonuç [kelime, uzunluk] şeklinde liste olmalı.
İpuçları
💡 İpucu 1: sentence.split() ile cümleyi kelimelere ayır.
💡 İpucu 2: max(words, key=len) ile en uzun kelimeyi bul.
💡 İpucu 3: Sonucu liste olarak döndür: [word, len(word)]
Yaklaşım & Açıklama
Bir cümledeki en uzun kelimeyi bulmak, Python'da `max()` fonksiyonunun `key` parametresini anlamayı ölçer.
**Problem:** "Python mülakat hazırlığı" → "mülakat" veya "hazırlığı" (uzunluk 8).
**İki çözüm:**
```python
def longest_word(sentence):
words = sentence.split()
return max(words, key=len)
# Manuel (key'siz)
def longest_word(sentence):
words = sentence.split()
longest = ""
for w in words:
if len(w) > len(longest):
longest = w
return longest
```
**Püf noktaları:**
- `split()` varsayılan olarak tüm whitespace'i ayırıcı kabul eder (boşluk, tab, newline).
- Aynı uzunlukta birden fazla kelime varsa `max()` **ilkini** döndürür.
- Noktalama dahil mi? "Merhaba, dünya" → split() noktalamayı kelimeye yapıştırır. Önce regex ile temizle.