Mettre une tartine dans l'ordre puis dans le désordre
De Centre de Ressources Numériques - Labomedia
Révision de 24 janvier 2015 à 16:43 par Olivier (discussion | contributions)
Mettre une tartine dans l'ordre puis dans le désordre |
---|
Pour modifier la page utiliser l'onglet Modifier avec formulaire.
Résumé | Met une tartine dans l'ordre puis dans le désordre |
---|---|
Auteur(s) | 01ivier |
Licence | CC-BY-SA 3 |
Date de création | 01 décembre 2014 |
Sommaire
Intentions / Contexte
Pour la 182 ème tartine, j'ai écrit deux scripts. L'un qui met une tartine dans le désordre, et l'autre qui la remet dans l'ordre. Ce script ci enchaîne les deux autant de fois qu'on le souhaite.
Principe de fonctionnement
Le script ouvre un fichier initial "la-tartine-dans-l-ordre-0.txt" puis crée "la-tartine-dans-le_desordre-0.txt" à partir du premier, puis "la-tartine-dans-l-ordre-1.txt" à partir du second... et ainsi de suite...
Besoins / Compétences
Avoir envie de perdre son temps.
Documentation
Script
from random import shuffle
def je_melange(numero):
liste_tartine = []
with open ("la-tartine-dans-l-ordre-{0}.txt".format(numero), 'r') as la_tartine_dans_l_ordre:
for ligne in la_tartine_dans_l_ordre:
liste_tartine.append(ligne)
desordre = range(len(liste_tartine))
shuffle(desordre)
with open ("la-tartine-dans-le-desordre-{0}.txt".format(numero), 'w') as la_tartine_dans_le_desordre:
for numero in desordre:
la_tartine_dans_le_desordre.write(str(numero).zfill(3) + " " + liste_tartine[numero])
def j_ordonne(numero):
dico_tartine = {}
with open ("la-tartine-dans-le-desordre-{0}.txt".format(numero), 'r') as la_tartine_dans_le_desordre:
for ligne in la_tartine_dans_le_desordre:
dico_tartine[int(ligne[:3])] = ligne[4:]
with open ("la-tartine-dans-l-ordre-{0}.txt".format(numero+1), 'w') as la_tartine_dans_l_ordre:
for numero in range(len(dico_tartine)):
la_tartine_dans_l_ordre.write(dico_tartine[numero])
for numero in range(17394):
je_melange(numero)
j_ordonne(numero)