2017-10-14 1 views
0

Fondamentalement, je veux que mon code python soit capable de lire la ligne que j'ai dans mon fichier .txt et de l'imprimer dans un autre fichier lorsqu'il est appelé.Python 3.6 imprimer le texte dans un fichier .txt

Ce que j'ai essayé:

var = open("Test.txt") 
print(var) 

J'ai également essayé d'utiliser readlines():

var = open("Test.txt") 
abcd = var.readlines() 
print(abcd) 

Et ce que je reçois quand je l'utilise que:

<_io.TextIOWrapper name='Test.txt' mode='r' encoding='US-ASCII'> 
+1

Vous devez corriger votre question pour afficher correctement votre bloc de code. – pstatix

+1

le résultat de abcd devrait être une liste de chaînes. TextIOWrapper est la valeur de var. S'il vous plaît consulter les docs pour plus d'informations sur TextIO https://docs.python.org/3/library/io.html#io.TextIOBase – ZzCalvinzZ

+0

Vous utiliserez normalement 'var = open (" Test.txt "). Readlines () 'then' print (var [0]) 'pour imprimer la première ligne. La trace de la pile que vous avez publiée est incomplète. Si vous publiez le reste, vous avez plus de chances d'obtenir de l'aide. Voici la documentation de 'readlines()' https://docs.python.org/2/tutorial/inputoutput.html#methods-of-file-objects – 16num

Répondre

0

Commencez par un gestionnaire de contexte, qu'est-ce que ça vous apporte?

with open('Test.txt', 'r') as f: 
    content = f.read() 

print (content) 
+0

Fichier "/Library/Frameworks/Python.framework/Versions/3.6 /lib/python3.6/encodings/ascii.py ", ligne 26, en décodage return codecs.ascii_decode (entrée, self.errors) [0] UnicodeDecodeError: le codec 'ascii' ne peut pas décoder l'octet 0xc2 en position 22 : ordinal non compris dans la plage (128) – INeedHelpAndFast

+0

Soit vous avez un problème avec votre fichier, soit vous devez réinstaller Python et réessayer. – pstatix

+0

Merci, vous avez répondu travaillé! Ré-installé python et s'est débarrassé de l'erreur. Merci tas! – INeedHelpAndFast

3

Ce que vous imprimez est uniquement la référence d'objet du fichier et non le texte réel qui s'y trouve. Lors de l'impression du contenu d'un fichier en python, vous devez utiliser la fonction read() pour retourner le contenu du fichier. Vous devez également spécifier les actions que vous voulez effectuer avec le fichier dans la fonction open().

  • r est lu
  • w est d'écrire
  • r+ est lu et écrire

Pour votre situation que vous utilisez:

var = open('Test.txt', 'r') 
    content = var.read() 
    print(content) 

Ce reviendriez tout le contenu de le fichier.