PROJET AUTOBLOG


Sam & Max: Python, Django, Git et du cul

Site original : Sam & Max: Python, Django, Git et du cul

⇐ retour index

Mise à jour

Mise à jour de la base de données, veuillez patienter...

Merci Foxmask !

dimanche 11 août 2013 à 23:45

Premier cadeau d’un lecteur. Snif. C’est trop choupinet.

Photo d'un colis de ninich au caramel

Notre amie vient de nous le relayer, et Max ne l'a pas encore vu, mais le tas a déjà diminué...

C’est vraiment super agréable de pas avoir l’impression d’être tout seul derrière son écran :-)

Je tague l’article “niniches”, ça sera le tag unique du blog ^^

flattr this!

L’article du jour, tué par Kevin Spacey

samedi 10 août 2013 à 22:46

Désolé les gars, on m’a recommandé House of Cards qui joue la carte du combo Spacey en acteur, et Fincher derrière la caméra.

Ça m’a bouffé tout mon temps et j’ai rien écrit.

flattr this!

Allez vers les gens non cartésiens

vendredi 9 août 2013 à 08:12

En tant qu’informaticiens on aime la logique. On a aime l’esprit critique. On aime comprendre. On aime les explications. Et les comptes qui tombent rond (1024 étant un très beau chiffre rond).

J’ai une expérience différente : je baigne dans le monde de l’ésotérisme depuis tout petit, pour des raisons familiales.

J’ai passé 20 ans à m’énerver contre la stupidité de certains pratiques, contre l’illogisme de certains croyances, contre la faiblesse des nombreuses conférences, explications, démonstrations… J’ai beaucoup débattu, je me suis pas mal pris la tête. Je citais le Traité d’Athéologie et je montais sur mes grands chevaux dès la moindre attaque à la laïcité. J’étais plus anti-religieux que laïque, par ailleurs.

Un peu de rigueur bande de bigots, ça vous tuerait ?

Et puis un jour j’ai réalisé un truc.

Non, je n’ai pas trouvé la foi.

Mais vous savez, comme quand les fumeurs vous disent “j’ai arrêté, j’ai eu le déclic”.

Il y avait des tas de choses qui pouvaient améliorer ma vie dans leur monde.

Ça a été dur à avaler pour moi. Essayer des choses qui n’ont pas de sens, ou pire, qui sont expliquées par des sornettes. Ça a été très difficile d’accepter de tester des choses arbitrairement. Lire des textes de divers religions, fréquenter des gens de sectes, des illuminés, des “alternatifs”. Ou des gens comme Max :-)

Et c’est venu, j’ai compris que j’étais bien plus con qu’eux.

Comprenez bien, que ce soit les médecines parallèles, les diverses formes de pratiques spirituelles, le développement personnel, l’alchimie, les amateurs d’OVNI, de complots mondiaux et d’énergie infinie, les obsédés sexuels, les anarchistes et les drogués, j’ai tout rencontré.

Bon ok, pas tout, mais j’ai vraiment fais un sacré tour, et dans de nombreux endroits, parfois très exotiques.

Et j’aurais dû le faire plus tôt. J’aurais dû plus discuter avec des juifs, des islamiste, des chrétiens. J’aurais dû lire leurs textes.

Parce que comme toute les choses, il y a l’image qu’on s’en fait, et la réalité. Et il y a aussi les gens d’un côté, et les institutions de l’autre. Il y a les passionnés et les charlatans. C’est comme partout.

Caricature de la chapelle sixteen avec des bières et max donalds

Il y a plusieurs icones religieuses dans cette image, saurez-vous les reconnaître ?

Une fois qu’on a commencé à s’ouvrir un peu, on rencontre des tas de pratiques alimentaires, médicales, de rythmes de vie, de philosophies, de méthodes de résolution de problème, qui sont inspirantes.

Il n’y a pas besoin de croire en bouddha pour bénéficier de la méditation. Il n’y a pas besoin de croire en Allah pour bénéficier du soufisme. Il n’y a pas besoin de croire en la théorie de l’attraction pour bénéficier de la pensée positive. Il n’y a pas besoin de croire en l’au-delà ou en la réincarnation pour apprécier des textes sacrés. Il n’y a pas besoin de croire en Dieu pour réfléchir au concept. Il n’y a pas besoin de croire en la dernière théorie alimentaires pour se faire une cure.

Et tous les créationnismes ne sont pas des extrémistes incultes qui réfutent la science, croient en la bible et pensent que la Terre s’est faite en 7 jours.

Et toutes les spiritualités ne supposent pas une religion, rituels, prières, hiérarchie. Toute prière, rituelle, révérence n’a pas besoin d’un sens religieux.

Et toutes les sectes ne sont pas des prédateurs pour leurs membres. Tous les membres ne sont pas des faibles, des victimes, des exclus.

Et tous les témoins de miracles, d’ONVI et de phénomènes étranges ne sont pas des malades ou en manque d’attention.

Et tous les amateurs de théorie du complot ne sont pas des paranoïaques décervelés.

Comme souvent en fait, une grande partie est discrète, bienveillante, et possède des pistes de réflexions, de choix de vie, que je n’avais jamais envisagé.

J’ai passé des moments, mal à l’aise, au milieu de foules récitant des mantras. J’ai rencontré des gens qui se privaient de nourriture, d’autres qui disaient se nourrir en regardant le soleil. J’ai mangé avec des personnes riches, convaincues que les extra-terrestres gouvernaient le monde.

Je suis une meilleure personne depuis.

Photo de Jesus disant : "les gars, ce n'est pas ce que j'ai dis"

La plupart des prosélytes n'ont jamais lu ou vérifié la source originale. Et la source originale n'a de toute façon rien d'originale.

J’ai gagné en culture, mais aussi en connaissance de moi-même. Je suis moins arrogant (et Max vous confirmera que j’ai encore du chemin ^^). J’ai bien entendu gagné en ouverture d’esprit. J’ai aussi découvert des pratiques avec des effets étonnant. Les explications sont diverses sur la cause de l’effet : placébo ? spirituel ? autre ? J’ai fini par réaliser que je m’en foutais complètement, pourvu que ça me serve.

J’ai beaucoup plus d’outils dans ma boîte à vie, certains que je n’aurais jamais osé imaginer ne serait-ce que regarder du coin de l’œil il y a quelques années. Ils sont là, sans raison, sans justification. Maintenant je fais des choses arbitrairement. Pas par foi, pas par compréhension, juste parce qu’un jour j’ai essayé, et ça m’a apporté.

En fait, nous faisons tous en permanence des choses arbitrairement. La plupart de nos décisions, passés à la loupe de la pensée critique, ne résistent pas très longtemps. Faisant ce constat, il est beaucoup plus facile d’accepter l’arbitraire d’autrui.

J’essaye donc maintenant compulsivement des choses.

J’ai eu des grains de riz collés à ma peau avec du sparadra pendant des jours.

J’ai avalé des mélanges de sel d’Epsom et d’huile d’olive.

J’ai récité des trucs chelou en langue Pali.

J’ai été tripoté par des magnétiseurs.

J’ai appelé les esprits.

Je suis resté des heures, immobile, en tailleur.

J’ai accompagné Max en Allemagne.

Photo de deux amis buvant une bière en se faisant sucer à bord d'un bateau

L'avantage de tester plein de choses, c'est qu'on a de bonnes surprises plus souvent que si on reste sur des rails.

Il y a un énorme taux d’échecs, et de choses qui ne (ME?) servent à rien. A part comme hobby, car tester des choses nouvelles est encore une des activités les plus fun de la vie.

Mais finalement, pas plus que des choses considérées comme avérées par notre société. En fait, quand on essaye beaucoup de choses, étranges ou reconnues, le taux d’échec est toujours énorme. La réussite est même plutôt l’exception. C’est une bonne leçon de vie, et cela a déclenché une autre révélation importante.

Coluche disait : “ce n’est pas parce qu’ils sont nombreux à avoir tort qu’ils ont raison”.

À force de vérifier si des choses en lesquelles je ne croyais pas avait quelque chose à apporter, je me suis mis à vérifier si des choses en lesquelles je croyais dur comme fer avaient un sens.

Et c’est là la grande surprise. En fait, j’étais un croyant depuis le départ.

En effet, j’ai grandi en apprenant des milliers de choses parfaitement fausses (ou fluctuantes mais annoncées comme constantes). La société, la psychologie, la politique, l’alimentation, la santé, le travail, les interactions entre personnes, mais aussi la personne que je pensais être… Toute ces choses n’ont pas résisté au test.

Du coup j’ai fais le ménage, et à avoir commencé à fréquenter des gens qui croient, j’ai finis pas moins croire.

Et de plus en plus, la meilleure réponses que je trouve à dire, la plus honnête, quand je, ou on, me pose une question, c’est : “je ne sais pas”.

Je ne suis toujours pas membre d’un secte ou d’un groupe religieux, mais j’ai bien des amis dans des groupes divers.

Je n’ai toujours pas de livre sacré ou de rituel, mais je ne méprise plus ceux qui en font une part importante de leur vie.

Plus que jamais, je crois qu’il faut tout mettre en doute, et vérifier par soi-même si on le peut, et en prime accepter qu’on a une grosse part d’arbitraire dans notre vie. Qu’on vit sur des “on-dit”. Que les institutions, l’histoire, la culture, la société et même le corps scientifique peuvent dire un énorme taux d’âneries. Que les voix parallèles peuvent parfois dire des choses essentielles. Qu’on va avoir tort soi-même, souvent, et que ce n’est pas si grave. Et surtout, que la majorité des gens ne savent pas ce qu’ils font, et n’ont aucune maîtrise de leur vie, y compris les personnes avec d’énormes responsabilités, dans tous les domaines.

Photo d'une façade d'immeuble pleine d'antennes satellite

Si on fait la même chose que tout le monde, on obtient le même résultat que tout le monde. Le corolaire, c'est que pour avoir un résultat différent, il faut donc commencer à agir différement.

La tolérance, c’est garder le respect pour une personne qui vous parle de “flux énergétique” sans avoir la moindre notion de ce qu’est de l’énergie. Parce que même si cela parait aberrant, il peut y avoir quelque chose d’utile à sa pratique.

L’ouverture d’esprit, c’est rester calme quand quelqu’un utilise la physique quantique ou le théorème de Gödel pour faire une démonstration fallacieuse qui justifie sa philosophie. Car son mode de vie peut être bénéfique malgré tout.

Le courage, c’est tenter ce que votre médecin vous interdit car c’est selon-lui très dangereux. Et quand ça marche au delà de tout espoir, de ne pas s’en vanter. Il reste la même personne qui vous a sauvé la vie, à 12 ans, en vous diagnostiquant une péritonite.

La générosité, c’est de répondre, encore et encore, simplement, inlassablement, aux mêmes questions des gens qui croisent votre route qui ont peur de tout cela, comme vous en avez eu peur un jour.

La persévérance c’est de ne pas s’arrêter aux échecs, au ridicule qui vous couvre quand vous réalisez qu’évidement, mettre une pierre dans votre nombril ne va rien faire du tout, vous vous attendiez à quoi ? C’est aussi continuer, et ce malgré les critiques des personnes moins ouvertes qui se demandent si vous n’êtes pas un peu bête, ou un peu fou. Et c’est accueillir la prochaine expérience avec moins de doute, même si elle parait complètement débile.

La diversité, c’est lire Alan Sokal ET Daniel Neal Walsch, Une Brève Histoire du Temps ET Les Quatres accords Toltèques, Think and Grow Rich ET Le Capital. Ils ne sont pas opposés, il sont complémentaires. Vous n’avez pas à en tirer ce que les autres veulent que vous en tiriez. Vous n’avez pas à l’utiliser tel que l’auteur veut que vous le fassiez. Vous n’avez pas à avoir le même avis que qui que ce soit sur la question. C’est votre expérience. Et seule l’expérience compte.

Malgré cela, et au final, la vie est courte, le monde est grand, et il vous faudra à un moment accepter la parole des autres. Vous n’allez pas construire un LHC perso pour vérifier ce qu’on dit sur le Boson, vous n’allez pas avaler une amanite phalloïde pour vous assurez que c’est bien vénéneux, et vous n’allez pas creuser chaque site archéologique pour confirmer que le dinosaure ont existé ailleurs que dans l’imagination de Spielberg.

Dessin de ka, le serpent du libre de la jungle

Rien à voir avec la choucroute, mais la version de "Trust In Me" de Selena Gomez est fantastique (https://www.youtube.com/watch?v=5v5Iulg5cVc)

A un moment il faut choisir de croire. Eh oui, même en science. Après la lecture des livres, la visite des musées, l’écoute des cours, il faut se décider. Pas parce que “tout le monde le dit”. Mais parce que ça vous parait crédible, c’est cohérent, il y a suffisamment de raisons de le croire, on pas suffisamment pour ne pas le croire. Ou tout simplement parce que ça vous arrange, après tout, qu’importe si on a eu tort, un fois dans un cercueil.

Il n’y a pas besoin de mysticisme ou de magie pour vivre. Mais plus encore, il faut se rappeler que rien n’est évident.

Ah oui, une dernière chose.

L’autre n’a pas forcément tort si vous avez raison.

Et si l’autre à tort, vous n’avez pas forcément raison.

P.S: j’ai volontairement choisi de ne pas parler des pratiques que j’ai incluses dans ma vie, ou rejetées, suite à ces expériences. L’article n’a pas pour but de vous dire ce que je pense être bon. L’article est là pour vous dire de trouver vous-même ce qui est bon pour vous. Et surtout de ne laisser personne d’autre, ni vos proches, ni la société, prendre la décision finale là dessus. Écoutez tout le monde, mais décidez seul.

Photo montage d'un homme qui tire une route comme un drap

Insérer ici vous-même une réfléxion profonde sur la destination, le chemin, bla bla bla.

flattr this!

Django, une app à la fois : GET, POST et COOKIES

jeudi 8 août 2013 à 12:31

Nouvel ajout au projet Django, une app à la fois, qui démontre comment récupérer les valeurs passées en GET, POST et cookies. Avec en prime comment setter la valeur d’un cookie.

Pour une fois, ça n’a pas été trop long. En même temps il n’y avait qu’une vue à faire.

Chopez les sources pendant que c’est encore chaud.

P.S: les corrections (bug, orthographe, esthétique…) sont toujours les bienvenues, même si c’est quelque chose de tout petit, sur la version anglaise comme la version française. N’hésitez pas à faire un Pull Request sur Github.

flattr this!

Les expressions rationnelles en Python, parfois overkill

mercredi 7 août 2013 à 13:40

J’adore les regex, et d’ailleurs il faudra que je fasse une série d’articles sur le sujet, un peu comme le guide de la POO.

Mais dans un langage comme Python, il y a de nombreuses solutions à mettre en oeuvre avant d’utiliser les regex.

Pour vérifier si une chaîne est dans une autre, utilisez in :

>>> 'a' in 'chat'
True
>>> 'a' in 'chien'
False
>>> 'a' in 'CHAT'.lower() # ignorer la casse
True

Pour savoir si un chaîne est au début ou à la fin, utilisez startswith() et endswith() :

>>> 'achat'.startswith('a')
True
>>> 'chat'.startswith('a')
False
>>> 'acheta'.endswith('a')
True

Pour savoir si la chaîne est d’un type particulier, utiliser les méthodes is* :

>>> '555'.isdigit()
True
>>> ''.isdigit()
False
>>> '⑦'.isdigit()
True
>>> '444'.isdecimal()
True
>>> '444.55'.isdecimal()
False
>> '⑦'.isdecimal()
False
>>> '879fds'.isalpha()
False
>>> 'fsdqfsqd'.isalpha()
True
>>> 'fsdqfsqd'.islower()
True
>>> 'fsdqFFsqd'.islower()
False
>>> '879fds'.isalnum()
True
>>> '879fds-'.isalnum()
False
>>> ' \t\n'.isspace()
True
>>> ' \t\n fdsfd'.isspace()
False

Si vous voulez manipuler la chaîne pour en extraire une partie, utilisez split() (ou rsplit(), lsplit() pour travailler sur la droite ou la gauche de la chaîne) :

>>> s = """Mais, vous savez, moi je ne crois pas qu'il y ait de bonne ou de mauvaise situation. Moi, si je devais résumer ma vie aujourd'hui avec vous, je dirais que c'est d'abord des rencontres, des gens qui m'ont tendu la main, peut-être à un moment où je ne pouvais pas, où j'étais seul chez moi. Et c'est assez curieux de se dire que les hasards, les rencontres forgent une destinée... Parce que quand on a le goût de la chose, quand on a le goût de la chose bien faite, le beau geste, parfois on ne trouve pas l'interlocuteur en face, je dirais, le miroir qui vous aide à avancer. Alors ce n'est pas mon cas, comme je le disais là, puisque moi au contraire, j'ai pu ; et je dis merci à la vie, je lui dis merci et je chante la vie, je danse la vie... Je ne suis qu'amour ! Et finalement, quand beaucoup de gens aujourd'hui me disent "Mais comment fais-tu pour avoir cette humanité ?", et bien je leur réponds très simplement, je leur dis que c'est ce goût de l'amour, ce goût donc qui m'a poussé aujourd'hui à entreprendre une construction mécanique, mais demain, qui sait, peut-être simplement à me mettre au service de la communauté, à faire le don... le don de soi."""
>>> s.split()
[u'Mais,', u'vous', u'savez,', u'moi', u'je', u'ne', u'crois', u'pas', u"qu'il", u'y', u'ait', u'de', u'bonne', u'ou', u'de', u'mauvaise', u'situation.', u'Moi,', u'si', u'je', u'devais', u'r\xe9sumer', u'ma', u'vie', u"aujourd'hui", u'avec', u'vous,', u'je', u'dirais', u'que', u"c'est", u"d'abord", u'des', u'rencontres,', u'des', u'gens', u'qui', u"m'ont", u'tendu', u'la', u'main,', u'peut-\xeatre', u'\xe0', u'un', u'moment', u'o\xf9', u'je', u'ne', u'pouvais', u'pas,', u'o\xf9', u"j'\xe9tais", u'seul', u'chez', u'moi.', u'Et', u"c'est", u'assez', u'curieux', u'de', u'se', u'dire', u'que', u'les', u'hasards,', u'les', u'rencontres', u'forgent', u'une', u'destin\xe9e...', u'Parce', u'que', u'quand', u'on', u'a', u'le', u'go\xfbt', u'de', u'la', u'chose,', u'quand', u'on', u'a', u'le', u'go\xfbt', u'de', u'la', u'chose', u'bien', u'faite,', u'le', u'beau', u'geste,', u'parfois', u'on', u'ne', u'trouve', u'pas', u"l'interlocuteur", u'en', u'face,', u'je', u'dirais,', u'le', u'miroir', u'qui', u'vous', u'aide', u'\xe0', u'avancer.', u'Alors', u'ce', u"n'est", u'pas', u'mon', u'cas,', u'comme', u'je', u'le', u'disais', u'l\xe0,', u'puisque', u'moi', u'au', u'contraire,', u"j'ai", u'pu', u';', u'et', u'je', u'dis', u'merci', u'\xe0', u'la', u'vie,', u'je', u'lui', u'dis', u'merci', u'et', u'je', u'chante', u'la', u'vie,', u'je', u'danse', u'la', u'vie...', u'Je', u'ne', u'suis', u"qu'amour", u'!', u'Et', u'finalement,', u'quand', u'beaucoup', u'de', u'gens', u"aujourd'hui", u'me', u'disent', u'"Mais', u'comment', u'fais-tu', u'pour', u'avoir', u'cette', u'humanit\xe9', u'?",', u'et', u'bien', u'je', u'leur', u'r\xe9ponds', u'tr\xe8s', u'simplement,', u'je', u'leur', u'dis', u'que', u"c'est", u'ce', u'go\xfbt', u'de', u"l'amour,", u'ce', u'go\xfbt', u'donc', u'qui', u"m'a", u'pouss\xe9', u"aujourd'hui", u'\xe0', u'entreprendre', u'une', u'construction', u'm\xe9canique,', u'mais', u'demain,', u'qui', u'sait,', u'peut-\xeatre', u'simplement', u'\xe0', u'me', u'mettre', u'au', u'service', u'de', u'la', u'communaut\xe9,', u'\xe0', u'faire', u'le', u'don...', u'le', u'don', u'de', u'soi.']
>>> s.split()[0]
u'Mais,'
>>> s.split()[5:7]
[u'ne', u'crois']
>>> s.split(',')
[u'Mais', u' vous savez', u" moi je ne crois pas qu'il y ait de bonne ou de mauvaise situation. Moi", u" si je devais r\xe9sumer ma vie aujourd'hui avec vous", u" je dirais que c'est d'abord des rencontres", u" des gens qui m'ont tendu la main", u' peut-\xeatre \xe0 un moment o\xf9 je ne pouvais pas', u" o\xf9 j'\xe9tais seul chez moi. Et c'est assez curieux de se dire que les hasards", u' les rencontres forgent une destin\xe9e... Parce que quand on a le go\xfbt de la chose', u' quand on a le go\xfbt de la chose bien faite', u' le beau geste', u" parfois on ne trouve pas l'interlocuteur en face", u' je dirais', u" le miroir qui vous aide \xe0 avancer. Alors ce n'est pas mon cas", u' comme je le disais l\xe0', u' puisque moi au contraire', u" j'ai pu ; et je dis merci \xe0 la vie", u' je lui dis merci et je chante la vie', u" je danse la vie... Je ne suis qu'amour ! Et finalement", u' quand beaucoup de gens aujourd\'hui me disent "Mais comment fais-tu pour avoir cette humanit\xe9 ?"', u' et bien je leur r\xe9ponds tr\xe8s simplement', u" je leur dis que c'est ce go\xfbt de l'amour", u" ce go\xfbt donc qui m'a pouss\xe9 aujourd'hui \xe0 entreprendre une construction m\xe9canique", u' mais demain', u' qui sait', u' peut-\xeatre simplement \xe0 me mettre au service de la communaut\xe9', u' \xe0 faire le don... le don de soi.']
>>> s.split('.')
[u"Mais, vous savez, moi je ne crois pas qu'il y ait de bonne ou de mauvaise situation", u" Moi, si je devais r\xe9sumer ma vie aujourd'hui avec vous, je dirais que c'est d'abord des rencontres, des gens qui m'ont tendu la main, peut-\xeatre \xe0 un moment o\xf9 je ne pouvais pas, o\xf9 j'\xe9tais seul chez moi", u" Et c'est assez curieux de se dire que les hasards, les rencontres forgent une destin\xe9e", u'', u'', u" Parce que quand on a le go\xfbt de la chose, quand on a le go\xfbt de la chose bien faite, le beau geste, parfois on ne trouve pas l'interlocuteur en face, je dirais, le miroir qui vous aide \xe0 avancer", u" Alors ce n'est pas mon cas, comme je le disais l\xe0, puisque moi au contraire, j'ai pu ; et je dis merci \xe0 la vie, je lui dis merci et je chante la vie, je danse la vie", u'', u'', u' Je ne suis qu\'amour ! Et finalement, quand beaucoup de gens aujourd\'hui me disent "Mais comment fais-tu pour avoir cette humanit\xe9 ?", et bien je leur r\xe9ponds tr\xe8s simplement, je leur dis que c\'est ce go\xfbt de l\'amour, ce go\xfbt donc qui m\'a pouss\xe9 aujourd\'hui \xe0 entreprendre une construction m\xe9canique, mais demain, qui sait, peut-\xeatre simplement \xe0 me mettre au service de la communaut\xe9, \xe0 faire le don', u'', u'', u' le don de soi', u'']

Et n’oubliez pas que vous pouvez appeler join() derrière.

Si vous devez altérer la chaîne, utilisez strip() (et rstrip(), lstrip()) ou replace() :

>>> "Les nouilles cuisent au jus de canne".replace('noui', 'coui').replace('cui', 'nui').replace('jus', 'cul').replace('canne', 'jeanne')
u'Les couilles nuisent au cul de jeanne'
>>> "                               .                       ".strip()
u'.'
>>> "===                               .                       ======".strip("= ")
u'.'

En plus, les chaînes sont itérables, indexables et sliceables, donc :

>>> s = """And I will strike down upon thee with great vengeance and furious anger those who attempt to poison and destroy my brothers. And you will know my name is the Lord when I lay my vengeance upon you!"""
>>> s[3:30:3]
u' wltkdnp '
>>> s.split()
[u'And', u'I', u'will', u'strike', u'down', u'upon', u'thee', u'with', u'great', u'vengeance', u'and', u'furious', u'anger', u'those', u'who', u'attempt', u'to', u'poison', u'and', u'destroy', u'my', u'brothers.', u'And', u'you', u'will', u'know', u'my', u'name', u'is', u'the', u'Lord', u'when', u'I', u'lay', u'my', u'vengeance', u'upon', u'you!']
>>> s[0]
u'A'
>>> ''.join([(l.upper() if i % 2 else l) for i, l in enumerate(s)])
u'ANd I wIlL StRiKe dOwN UpOn tHeE WiTh gReAt vEnGeAnCe aNd fUrIoUs aNgEr tHoSe wHo aTtEmPt tO PoIsOn aNd dEsTrOy mY BrOtHeRs. AnD YoU WiLl kNoW My nAmE Is tHe LOrD WhEn I lAy mY VeNgEaNcE UpOn yOu!'

Bref, avant de sortir le bazooka, souvenez-vous que vous avez un arsenal déjà très approprié pour traiter les strings, dont les perfs seront en plus probablement meilleures.

flattr this!

Error happened! 0 - count(): Argument #1 ($value) must be of type Countable|array, null given In: /var/www/ecirtam.net/autoblogs/autoblogs/autoblog.php:428 http://ecirtam.net/autoblogs/autoblogs/sametmaxcom_a844ada43a979e3b1395ab9acb6afafb84340999/?139 #0 /var/www/ecirtam.net/autoblogs/autoblogs/autoblog.php(999): VroumVroum_Blog->update() #1 /var/www/ecirtam.net/autoblogs/autoblogs/sametmaxcom_a844ada43a979e3b1395ab9acb6afafb84340999/index.php(1): require_once('...') #2 {main}