Maison  >  Article  >  développement back-end  >  En savoir plus sur la fonction spéciale __len__(self) en python

En savoir plus sur la fonction spéciale __len__(self) en python

零下一度
零下一度original
2017-05-23 14:49:322810parcourir

len Si une classe se comporte comme une liste, pour obtenir le nombre d'éléments, il faut utiliser la fonction len(). Pour que la fonction len() fonctionne correctement, la classe doit fournir une méthode spéciale len(), qui renvoie le nombre d'éléments.
Par exemple, nous écrivons une classe d'Étudiants et passons le nom dans :

class Students(object):    def init(self, *args):
        self.names = args    def len(self):        return len(self.names)

Tant que la méthode len() est correctement implémentée, vous pouvez utiliser la fonction len() pour renvoyer le " longueur" de l'instance Etudiants :

>>> ss = Students('Bob', 'Alice', 'Tim')>>> print len(ss)3

Tâche
La séquence de Fibonacci est composée de 0, 1, 1, 2, 3, 5, 8....
Veuillez écrire une classe Fib. Fib(10) représente les 10 premiers éléments de la séquence. print Fib(10) peut imprimer les 10 premiers éléments de la séquence len(Fib(10)) peut renvoyer correctement le nombre. de la séquence 10.

Besoin de calculer les N premiers éléments de la séquence de Fibonacci en fonction du nombre.
Code de référence :

class Fib(object):    def init(self, num):
        a, b, L = 0, 1, []        for n in range(num):
            L.append(a)
            a, b = b, a + b
        self.numbers = L    def str(self):        return str(self.numbers)    repr = str
    def len(self):        return len(self.numbers)
f = Fib(10)print fprint len(f)

La liste ne peut insérer des éléments que par ajout et insertion ! ! !

[Recommandations associées]

1. Résumé des exemples d'utilisation de la fonction len() en Python

2. Doit. maître Peu de connaissances - Explication détaillée des exemples de Python len

3 Un exemple de tutoriel sur l'utilisation des méthodes de classe spéciale Python<.>

4. Les méthodes magiques Python __getitem__, __setitem__, __delitem__, __len__ sont introduites respectivement

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn