Python: la Suppression des chaînes spécifiques à partir d'un fichier

J'ai un fichier de données (onu-construit en désordre fichier) à partir de laquelle j'ai gommage spécifique de la liste de chaînes de caractères (supprimer des chaînes de caractères).

Ici est ce que je fais mais sans résultat:

infile = r"messy_data_file.txt"
outfile = r"cleaned_file.txt"

delete_list = ["firstname1 lastname1","firstname2 lastname2"....,"firstnamen lastnamen"]
fin=open(infile,"")
fout = open(outfile,"w+")
for line in fin:
    for word in delete_list:
        line = line.replace(word, "")
    fout.write(line)
fin.close()
fout.close()

Lorsque j'exécute le fichier, j'obtiens l'erreur suivante:

NameError: name 'word' is not defined

S'il vous plaît aider!

  • Êtes-vous d'obtenir toute sorte d'erreur ou est-il juste de ne pas générer un fichier, mais le script s'affiche à exécuter?
  • Non, je n'obtiens pas d'erreur..Le fichier apparaît à exécuter. L' .py fichier de générer un fichier de log qui je peux regarder. Je ne vois rien dans le répertoire.
  • Après l'exécution, ne cleaned_file.txt existent-ils?
  • non, je ne vois pas cleaned_file.txt..
  • Quelle plate-forme êtes-vous sur? L'utilisateur qui exécute le programme ont la permission d'écrire dans le répertoire dans lequel le programme est exécuté?
  • Ajouter une instruction print après votre fout = et file_data lignes. Imprimer quoi que ce soit mais juste de vérifier que votre programme est en exécution de cette mesure. L'autre pensée que j'ai eu était d'utiliser un chemin d'accès complet pour votre dans et hors de fichier. De cette façon, il n'y a pas une possibilité pour que le fichier soit écrit à un endroit inattendu.
  • Oui, j'ai des autorisations d'écriture!
  • Appologies. Je suis en train de supprimer des chaînes de caractères. Vous ne savez pas comment le faire fonctionner.
  • Comment êtes-vous de l'exécuter? De quoi êtes-vous en tapant sur la ligne de commande pour l'exécuter?
  • Je suis en double cliquant sur le .py fichier. Il semble invoquer l'application python qui disparaît après quelques secondes. Je n'obtiens pas d'erreur de la pensée..
  • -1: L'indentation est tellement mauvais, qu'il est impossible de juger de ce qui se passe.
  • Exécuter à partir d'une invite de commande, de sorte que vous pouvez voir tout ce qu'il génère immédiatement avant la fermeture.
  • Vous n'êtes pas l'exécution de la liste de code si vous avez reçu un message d'erreur " mot " n'est pas défini.

InformationsquelleAutor Zenvega | 2011-09-09