# Voisinage en Python

2015-01-25

J’ai besoin de connaître les articles précédents et suivants pour le blog et maintenant pour ces notes, je suis arrivé à la version suivante en Python qui produit un générateur à partir d’un itérable grâce au mot-clé `yield` :

    def neighborhood(iterable, first=None, last=None):
        """
        Yield the (previous, current, next) items given an iterable.

        You can specify a `first` and/or `last` item for bounds.
        """
        iterator = iter(iterable)
        previous = first
        current = iterator.next()  # Throws StopIteration if empty.
        for next in iterator:
            yield (previous, current, next)
            previous = current
            current = next
        yield (previous, current, last)

Il me fallait surtout la possibilité de spécifier un premier/dernier item pour avoir un lien sur le premier article publié vers les pensées plus anciennes ou la première note vers les tweets archivés. Il y a une suite et une fin à cette série.

Articles choisis : Commodité et effondrement, Des données aux communs, Accompagner un enfant, Senior developer, L’illusion sociale, Instantané Scopyleft, Enseigner le Web, Simplicité par défaut, Minimalisme et esthétique, Travail en transition, La pairmutation du travail, Principes Web, Travail en transition, Un web omni-présent, Manifeste de développeur, Confort et convivialité, Testament numérique, et bien d’autres…