2010-03-23 9 views
0

Это первый скрипт Python, который я пытался создать. Я читаю xml-файл из пакета tar.gz, а затем хочу его распечатать. Однако я не могу превратить его из файлового объекта в строку. Я попытался сделать это несколькими способами, включая str(), tostring() и т. Д., Но для меня ничего не работает.Python: Довольно печатать xml-файл непосредственно из пакета tar.gz

Для тестирования я просто пытался напечатать строку на «печать MYFILE [0: 200]», и он всегда создает «<tarfile.ExFileObject object at 0x10053df10>»

import os 
import sys 
import tarfile 
from xml.dom.minidom import parseString 

tar = tarfile.open("data/ucd.all.flat.tar.gz", "r") 
getfile = tar.extractfile("ucd.all.flat.xml") 

myfile = str(getfile) 
print myfile[0:200] 

output = parseString(getfile).toprettyxml() 
print output 

tar.close() 

ответ

2

непроверенная, но вы, вероятно, просто нужно read() вызов на Файл- как объект, возвращаемый tarfile, например:

myfile = getfile.read() 
+1

также передайте полученную строку в parseString, а не в файл-объект –

 Смежные вопросы

  • Нет связанных вопросов^_^