Funkcja len() w Pythonie – kompletny przewodnik

21 czerwca 2024

Funkcja len python to jedna z najbardziej podstawowych i najczęściej używanych funkcji w języku Python. Służy ona do określania długości, czyli liczby elementów, różnych typów obiektów takich jak napisy, listy, tuple czy słowniki. W tym artykule przedstawimy Ci kompletny przewodnik po funkcji len(), dzięki któremu nauczysz się sprawnie z niej korzystać.

Składnia funkcji len()

Składnia funkcji len() jest bardzo prosta:

python
len(obiekt)

Jako argument `obiekt` możemy przekazać dowolny obiekt, którego długość chcemy poznać. Może to być na przykład:

  • napis (string)
  • lista
  • tupla
  • słownik
  • zbiór (set)

Funkcja len() zwraca liczbę całkowitą określającą długość przekazanego obiektu.

Zastosowania funkcji len()

Funkcja len() ma szerokie zastosowania w codziennym programowaniu w Pythonie. Oto niektóre z najczęstszych przypadków użycia:

Sprawdzanie długości napisu

Możemy użyć len() do sprawdzenia ile znaków zawiera dany napis:

python
napis = "Python jest super!"
print(len(napis))  # wynik: 18

Sprawdzanie liczby elementów na liście lub w tupli

Funkcja len() pozwala określić ile elementów znajduje się na liście lub w tupli:

python
lista = [1, 2, 3, 4, 5]
print(len(lista))  # wynik: 5

tupla = (1, 2, 3) 
print(len(tupla))  # wynik: 3

Sprawdzanie liczby kluczy w słowniku

W przypadku słowników, len() zwraca liczbę par klucz-wartość:

python
slownik = {'a': 1, 'b': 2, 'c': 3}
print(len(slownik))  # wynik: 3

Iterowanie po elementach

Często używamy len() w pętlach, aby wykonać operację na każdym elemencie:

python
lista = [1, 2, 3]
for i in range(len(lista)):
    print(lista[i])

Funkcja len() w połączeniu z funkcją range() pozwala iterować po indeksach elementów.

funkcja len python

Przykłady użycia len() 

Poniżej przedstawiamy kilka praktycznych przykładów zastosowania funkcji len() w Pythonie.

Przykład 1. Sprawdzanie czy hasło ma wymaganą długość

python
def czy_dobre_haslo(haslo):
    min_dlugosc = 8
    if len(haslo) >= min_dlugosc:
        return True
    else:
        return False

haslo1 = "1234"
haslo2 = "supertajnehaslo123"

print(czy_dobre_haslo(haslo1))  # wynik: False
print(czy_dobre_haslo(haslo2))  # wynik: True

W powyższym przykładzie definiujemy funkcję `czy_dobre_haslo`, która sprawdza czy podane hasło ma co najmniej 8 znaków długości. Używamy tutaj len() do sprawdzenia długości napisu z hasłem.

Przykład 2. Znajdowanie najdłuższego słowa

python
def znajdz_najdluzsze_slowo(zdanie):
    slowa = zdanie.split()
    najdluzsze = ''
    for slowo in slowa:
        if len(slowo) > len(najdluzsze):
            najdluzsze = slowo
    return najdluzsze

zdanie = "Python jest łatwy do nauki i bardzo przydatny"
print(znajdz_najdluzsze_slowo(zdanie))  # wynik: 'przydatny'

Funkcja `znajdz_najdluzsze_slowo` rozbija podane zdanie na listę słów za pomocą metody split(). Następnie w pętli porównujemy długości kolejnych słów używając len() i zapamiętujemy najdłuższe z nich.

Przykład 3. Formatowanie tabelki

python
dane = [
       ["Login", "Haslo", "Hash"],
    ["admin1", qwerty12345, 85064efb60a9601805dcea56ec5402f7],
    ["admin", qwerty123, 3fc0a7acf087f549ac2b266baf94b8b1],
    ["administrator", qwerty, d8578edf8458ce06fbc5bb76a58c5ca4]
]

for wiersz in dane:
    wiersz = [str(x) for x in wiersz]
    print(" | ".join(x.ljust(len(max(wiersz, key=len))) for x in wiersz))

W tym przykładzie mamy listę list reprezentującą dane w formie tabelki. Chcemy wyświetlić te dane w ładnie sformatowany sposób. Używamy len() w połączeniu z funkcją max(), aby znaleźć najdłuższy element w każdym wierszu. Następnie używamy tej długości do wyrównania każdej kolumny za pomocą metody ljust().

Wynik:

Login      | Haslo     | Hash
admin1     | qwerty12345 | 85064efb60a9601805dcea56ec5402f7   
admin      | qwerty123  | 3fc0a7acf087f549ac2b266baf94b8b1    
administrator | qwerty     | d8578edf8458ce06fbc5bb76a58c5ca4   

Podsumowanie

Funkcja len() to niezwykle przydatne narzędzie w arsenale każdego programisty Pythona. Jej główne zalety to:

  • Uniwersalność – działa z wieloma typami obiektów
  • Prostota – składnia jest krótka i przejrzysta
  • Wydajność – działa bardzo szybko nawet na dużych obiektach

Warto zapamiętać len() i używać jej zawsze, gdy potrzebujemy sprawdzić długość obiektu.

Jeśli chcesz nauczyć się Pythona od podstaw i dowiedzieć się, jak wykorzystywać go na co dzień w cybersecurity, zapraszamy na kurs Red Team Specialist w naszej firmie HackerU. Oferujemy kompleksowe szkolenia, na których zdobędziesz wiedzę i praktyczne umiejętności. Nasi doświadczeni trenerzy wprowadzą Cię w świat bezpieczeństwa cybernetycznego i pomogą rozwinąć karierę w branży IT. Dołącz do HackerU i zacznij swoją przygodę z cyberbezpieczeństwem już dziś!