Python len() Fonksiyonu: Dizenin uzunluğu nasıl bulunur?
⚡ Akıllı Özet
Python `len()` fonksiyonu, bir dizedeki karakterler veya bir liste, demet, sözlük veya kümedeki öğeler gibi bir nesnedeki öğe sayısını döndüren yerleşik bir fonksiyondur.

Nedir Python len() Fonksiyonu?
MKS len () Bu fonksiyon, yerleşik bir fonksiyondur. PythonVerilen bir dizenin, dizinin, listenin, demetin, sözlüğün ve diğer nesnelerin uzunluğunu almak için `len()` fonksiyonunu kullanabilirsiniz. Eleman sayısı her seferinde yeniden hesaplanmak yerine nesne üzerinde saklandığı için, `len()` fonksiyonu boyutu hızlı bir şekilde kontrol etmenize ve programınızın performansını optimize etmenize yardımcı olur.
Sözdizimi Python len() İşlevi
MKS Python len() fonksiyonu aşağıdaki sözdizimini kullanır:
len(value)
Parametreler
değeri: Uzunluğunu ölçmek istediğiniz nesne (örneğin, bir dize, liste, demet, sözlük veya küme).
Geri dönüş değeri
`len()` fonksiyonu bir tamsayı döndürür; yani bir dizedeki karakter sayısını veya bir dizi, liste veya koleksiyondaki eleman sayısını döndürür. Dönüş değerinin tam anlamı, kendisine iletilen nesnenin türüne bağlıdır:
- Teller: `len()` fonksiyonu, noktalama işaretleri, boşluklar ve her türlü özel karakter dahil olmak üzere dizedeki karakter sayısını döndürür.
- Boş: Boş bir dize veya boş bir koleksiyon, sıfır öğe içerdiği için 0 değerini döndürür.
- Koleksiyonlar: `len()` yerleşik fonksiyonu, bir koleksiyonda saklanan eleman sayısını döndürür.
- TipHatası: `len()` fonksiyonu, kendisine iletilen nesnenin türüne bağlıdır. Tamsayı gibi uzunluğu olmayan bir değer iletmek, `TypeError` hatasına neden olur.
- Sözlük: Sözlüklerde her anahtar-değer çifti bir birim olarak sayılır, bu nedenle len() anahtar sayısını döndürür.
Örnekleri Python len() İşlevi
Aşağıdaki örnekler, farklı uzunlukları bulmak için len() fonksiyonunun nasıl kullanılacağını göstermektedir. Python Dize, liste, demet, sözlük ve dizi dahil olmak üzere nesneler.
Örnek 1: Bir Dizinin Uzunluğunu Bulma
# testing len()
str1 = "Welcome to Guru99 Python Tutorials"
print("The length of the string is :", len(str1))
Çıktı:
The length of the string is : 35
Örnek 2: Bir Listenin Uzunluğunu Bulma
# to find the length of the list
list1 = ["Tim","Charlie","Tiffany","Robert"]
print("The length of the list is", len(list1))
Çıktı:
The length of the list is 4
Örnek 3: Bir Demetin Uzunluğunu Bulma
# to find the length of the tuple
Tup = ('Jan','feb','march')
print("The length of the tuple is", len(Tup))
Çıktı:
The length of the tuple is 3
Örnek 4: Bir Sözlüğün Uzunluğunu Nasıl Bulabilirsiniz?
# to find the length of the Dictionary
Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
print("The length of the Dictionary is", len(Dict))
Çıktı:
The length of the Dictionary is 4
Örnek 5: Bir Dizinin Uzunluğunu Bulma
# to find the length of the array
arr1 = ['Tim','Charlie','Tiffany','Robert']
print("The length of the Array is", len(arr1))
Çıktı:
The length of the Array is 4
`len()` fonksiyonunu kullanmadan bir dizenin uzunluğunu nasıl bulabilirim? Python
`len()` fonksiyonu bir dizenin uzunluğunu ölçmenin en hızlı ve en anlaşılır yoludur, ancak karakterleri manuel olarak da sayabilirsiniz. Bu, kodlama mülakatlarında sıkça sorulan bir sorudur ve her yöntem, sayacı artırırken dizenin tamamını döngüye alır.
En yaygın yaklaşım bir for döngüsü kullanmaktır:
# length of a string without len()
mystr = "Guru99"
count = 0
for char in mystr:
count += 1
print("The length is", count)
Çıktı:
The length is 6
Daha kısa bir seçenek ise, dizedeki her karakter için 1 ekleyerek, bir üreteç ifadesiyle sum() işlevini kullanmaktır:
mystr = "Guru99"
length = sum(1 for char in mystr)
print("The length is", length)
Çıktı:
The length is 6
len() fonksiyonunu kullanmadan karakter saymanın diğer yolları şunlardır:
- Dizeyi boşaltana kadar dilimleyen ve her geçişte bir sayacı artıran bir while döngüsü.
- enumerate() fonksiyonu, tracks, yineleme sırasında her karakterin indeksini alır.
- Kalan alt dizenin uzunluğuna 1 eklenerek sonuç döndüren özyinelemeli bir fonksiyon.
Bu manuel yöntemler, yerleşik `len()` fonksiyonundan daha yavaştır; bu nedenle bunları öğrenme veya mülakat pratiği için saklayın. Günlük kodda, `len()` en hızlı ve en anlaşılır seçenektir.
Nasıl olur Python len() fonksiyonu dahili olarak mı çalışıyor?
len() fonksiyonunun nasıl çalıştığını anlamak, neden bu kadar hızlı olduğunu da açıklar. Bir nesne üzerinde len() fonksiyonunu çağırdığınızda, Python Her bir öğeyi tek tek taramaz. Bunun yerine, nesnenin özel __len__() yöntemini çağırır; bu da len(x) ifadesinin x.__len__() ifadesine eşdeğer olduğu anlamına gelir.
Dizeler, listeler, demetler, sözlükler ve kümeler gibi yerleşik kapsayıcılar, kendi boyutlarını bir özellik olarak saklar. Her öğe eklediğinizde veya kaldırdığınızda, Python Bu, saklanan sayıyı günceller. len() çağrıldığında, önceden saklanan bu değeri okur ve döndürür.
Uzunluk zaten bilindiğinden, len() sabit zamanda çalışır, yani O(1) olarak yazılır. Nesne beş öğe veya beş milyon öğe içerse de aynı süreyi alır. Ayrıca, bir tamsayı döndüren bir __len__() yöntemi tanımlayarak kendi sınıflarınıza len() desteği ekleyebilirsiniz:
class Team:
def __len__(self):
return 11
squad = Team()
print(len(squad))
Çıktı:
11
Bu tasarım sayesinde len() yöntemi, hem yerleşik tüm türlerde hem de __len__() yöntemini uygulayan tüm özel nesnelerde tutarlı bir şekilde davranır.
" Hakkında daha fazla öğren Python dize yöntemleri
