Nájdite veľkosť zoznamu v Pythone
Zoznam je typ údajov kolekcie, ktorý je usporiadaný a meniteľný. Zoznam môže obsahovať aj duplicitné položky. Tu je úlohou nájsť počet záznamov v zozname Python .
Príklady:
Input: a = [1, 2, 3, 1, 2, 3] Output: 6 Explanation: The output is 6 because the number of entries in the list a is also 6.
Nižšie sú uvedené metódy, ktorým sa budeme venovať v tomto článku:
- Použitím len() metóda
- Použitím suma() funkciu
- Použitím pre slučku
- Pomocou
length_hint()>metóda
Nájdite veľkosť zoznamu pomocou metódy len().
Len() funguje v čase O(1), pretože zoznam je objekt a má člena na uloženie jeho veľkosti. Nižšie je uvedený popis len() from Dokumenty Python .
Vráti dĺžku (počet položiek) objektu. Argumentom môže byť sekvencia (napríklad reťazec, bajty, n-tica, zoznam alebo rozsah) alebo kolekcia (napríklad slovník, množina alebo zmrazená množina).
Python3
# Python program to demonstrate working of len()> a> => []> a.append(> 'Hello'> )> a.append(> 'Geeks'> )> a.append(> 'For'> )> a.append(> 'Geeks'> )> print> (> 'The length of list is: '> ,> len> (a))> |
Výkon
The length of list is: 4
Nájdite dĺžku zoznamu pomocou funkcie sum().
Ďalším prístupom je použitie vstavaného funkcia sum(). v kombinácii s a generátorový výraz. To vám umožňuje zistiť veľkosť zoznamu sčítaním počtu prvkov v zozname, ktoré spĺňajú určitú podmienku.
Python3
# list of numbers> numbers> => [> 1> ,> 2> ,> 3> ,> 1> ,> 2> ,> 3> ]> # find the size of the list> size> => sum> (> 1> for> num> in> numbers)> # print the size of the list> print> (size)> |
Výkon
6
Výsledkom bude 6, pretože zoznam obsahuje 6 prvkov.
Časová zložitosť: Časová zložitosť prístupu pomocou funkcie sum() a generátorového výrazu je O(n), kde n je dĺžka zoznamu.
Zložitosť priestoru: Pomocná priestorová zložitosť tohto prístupu je O(1), pretože výraz generátora vyžaduje iba jednu premennú na uloženie aktuálneho spracovávaného prvku.
Nájdite dĺžku zoznamu pomocou cyklu for
Týmto spôsobom inicializujeme počet premenných a potom premennú inkrementujeme cez cyklus a na konci cyklu dostaneme dĺžku zoznamu v našej premennej počtu.
Python3
lst> => [> 1> ,> 1> ,> 2> ,> 5> ,> 1> ,> 5> ,> 2> ,> 4> ,> 5> ]> count> => 0> for> i> in> lst:> > count> +> => 1> print> (> 'The length of the lst is :'> ,count)> |
Výkon
The length of the lst is : 9
Časová zložitosť: O(n)
Priestorová zložitosť: O(1)
Nájdite veľkosť zoznamu pomocou length_hint()> metóda
The length_hint()> funkcia z operator> modul na odhad dĺžky zoznamu. Upozorňujeme však, že táto funkcia nezaručuje, že vám poskytne presnú veľkosť zoznamu, najmä v prípade štandardných zoznamov v jazyku Python.
The length_hint()> funkcia poskytuje nápovedu o očakávanej dĺžke iterovateľnej položky, ale nemusí byť presná pre všetky typy iterovateľných položiek. Tu je váš príklad:
Python3
from> operator> import> length_hint> lst> => [> 'Geeks'> ,> 'For'> ,> 'Geeks'> ]> size> => length_hint(lst)> print> (> 'The size of the size lst:'> ,size)> |
Výkon
The size of the size lst: 3
Časová zložitosť: O(n)
Priestorová zložitosť: O(1)