我正在使用 Python 解析一个 xls 文件,然后将该信息转换为SBML(XML 的一个版本)。
from mod2sbml import Parser
s = open('sbmltest3.mod', 'r').read()
p = Parser()
d = p.parse(s)
outfile2 = open('sbmlconvert.xml', 'w')
print >> outfile2, d.toSBML()
outfile2.close()
这是一个相当长的文件(>3000 行),当我打开 .xml 时,字符串会随机截断大约 1400 或 3000 行。但是,当我键入:print d.toSBML()
并将此字符串打印到控制台时,该字符串不会被截断,我可以看到已解析字符串的结尾。
这里可能是什么问题?
编辑:为了进一步剖析问题,我用 outfile2.close() 关闭了代码,还尝试在我的脚本中打印和打印到控制台。这将返回截断s
和d
字符串。但是,当我分别在解释器中输入确切的命令时,都可以正确打印。有谁知道这种差异是怎么回事?