次の問題が発生しました: コード A は現在動作しています.chart.png という名前の png ファイルをローカルに保存し、それを独自の関数 (アクセス権がない) にロードしています。
ただし、コード B では、ファイル「chart.png」をディスクに書き込む必要がないように、cStringIO.StringIO() を使用しようとしています。しかし、「chart.png」のような実際のファイル名を期待しているため、それを独自の関数に渡す方法が見つかりません(拡張子を識別するために分割関数を使用しているようにも見えます)。
コード A (現在実行中のコード):
file = "chart.png"
pylab.savefig(file, format='png')
a = proprietaryfunction.add(file)
コード B (私がやろうとしていること - 動作しません):
file = cStringIO.StringIO()
pylab.savefig(file, format='png')
a = proprietaryfunction.add(file)
cStringIO.StringIO() の使用を独自の関数に対して透過的にするにはどうすればよいですか? このためにメモリ内の仮想ファイルシステムをエミュレートできる方法はありますか?