Cython:将C函数文件的输出重定向到Python字符串
我有一个将输出写入文件的C函数(Cython:将C函数文件的输出重定向到Python字符串,python,string,file-io,cython,Python,String,File Io,Cython,我有一个将输出写入文件的C函数(.pxd文件定义如下): (这会将人类可读的问题公式写入名为fname的文件)我想从Python使用此函数,但输出会重定向到Python字符串。我已经看过tempfile模块,但并不知道如何解决这个问题 我确实知道如何将函数包装到.pyx文件中,但不知道如何重定向。除了创建临时文件(tempfile.mkstemp()),将结果传递给写入问题和读取该文件,将其返回到字符串中之外,没有其他简单的方法 理论上,它可以实现一个“虚拟”文件系统来重定向IO调用。不过,这听
.pxd
文件定义如下):
(这会将人类可读的问题
公式写入名为fname
的文件)我想从Python使用此函数,但输出会重定向到Python字符串。我已经看过tempfile模块,但并不知道如何解决这个问题
我确实知道如何将函数包装到
.pyx
文件中,但不知道如何重定向。除了创建临时文件(tempfile.mkstemp()
),将结果传递给写入问题和读取该文件,将其返回到字符串中之外,没有其他简单的方法
理论上,它可以实现一个“虚拟”文件系统来重定向IO调用。不过,这听起来确实有些过火
int write_prob(ProbObj* problem, const char* fname)