2014-09-17 7 views
2

Je travaille avec python 3.4 dans Windows 7.En essayant de comparer deux fichiers texte et je veux signaler les différences en utilisant difflib. Voici le code m en utilisant:ImportError: Aucun module nommé difflib_data

import difflib 
from difflib_data import * 

with open("s1.txt") as f, open("s2.txt") as g: 
    flines = f.readlines() 
    glines = g.readlines() 

d = difflib.Differ() 
diff = d.compare(flines, glines) 
print("\n".join(diff)) 

Traceback: d'importation difflib_data * ImportError: Aucun module nommé 'difflib_data'

Comment supprimer cette erreur .... merci

+2

'difflib_data' n'est pas le fichier/le module d'un python standard. Peut-être que vous avez copié le code quelque part (?) Enfait le code sera exécuté même si vous supprimez l'importation 'de difflib_data import *' ligne – sk11

Répondre

2

De le following post, il semble que ce soit les données d'exemple fournies avec le tutoriel PyMOTW. Je suppose que l'auteur veut que vous copiez et collez la source des données de test dans un nouveau fichier nommé difflib_data.py dans votre répertoire de travail.

Copiez les lignes suivantes dans difflib_data.py

text1 = """Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Integereu lacus accumsan arcu fermentum euismod. Donec pulvinar porttitortellus. Aliquam venenatis. Donec facilisis pharetra tortor. In necmauris eget magna consequat convallis. Nam sed sem vitae odiopellentesque interdum. Sed consequat viverra nisl. Suspendisse arcumetus, blandit quis, rhoncus ac, pharetra eget, velit. Maurisurna. Morbi nonummy molestie orci. Praesent nisi elit, fringilla ac,suscipit non, tristique vel, mauris. Curabitur vel lorem id nisl portaadipiscing. Suspendisse eu lectus. In nunc. Duis vulputate tristiqueenim. Donec quis lectus a justo imperdiet tempus.""" 

text1_lines = text1.splitlines() 

text2 = """Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Integereu lacus accumsan arcu fermentum euismod. Donec pulvinar porttitortellus. Aliquam venenatis. Donec facilisis pharetra tortor. In necmauris eget magna consequat convallis. Nam sed sem vitae odiopellentesque interdum. Sed consequat viverra nisl. Suspendisse arcumetus, blandit quis, rhoncus ac, pharetra eget, velit. Maurisurna. Morbi nonummy molestie orci. Praesent nisi elit, fringilla ac,suscipit non, tristique vel, mauris. Curabitur vel lorem id nisl portaadipiscing. Suspendisse eu lectus. In nunc. Duis vulputate tristiqueenim. Donec quis lectus a justo imperdiet tempus.""" 

text2_lines = text2.splitlines() 
+0

thnks @Rishi Dua .... il est juste en train d'imprimer tout le contenu des fichiers .. ne peut pas trouver la différence entre eux. – Maxxie

+0

Chaque ligne doit être précédée de -, +,? etc. pour marquer la différence. –

+0

ouais un '+' est là au début d'une ligne différente ... mais comment puis-je copier seulement ces lignes "+" dans un fichier texte différent ... ?? – Maxxie