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を出力してコンソールに出力しようとしました。これにより、切り捨てられた文字列s
とd
文字列の両方が返されます。ただし、正確なコマンドをインタプリタに個別に入力すると、両方とも正しく印刷されます。誰もがこの不一致で何が起こっているのか知っていますか?