我试图弄清楚如何使用F2PY从我为其生成Python接口的一些FORTRAN代码重定向输出.我试过了:
from fortran_code import fortran_function
stdout_holder = sys.stdout
stderr_holder = sys.stderr
sys.stdout = file("/dev/null","w")
fortran_function()
sys.stdout.close()
sys.stderr.close()
sys.stdout = stdout_holder
sys.stderr = stderr_holder
Run Code Online (Sandbox Code Playgroud)
这是在Python中重定向输出的事实上的方法,但在这种情况下似乎不起作用(即,无论如何都会显示输出).
我确实从2002年发现了一个邮件列表帖子,说"有可能从pts设备读取消息,例如ttysnoop就是这样".关于ttysnoop的信息似乎很难在网上找到(我不认为它已经在很多年内更新;例如,谷歌"ttysnoop"的第一个结果只有到tarball,RPM和.deb的死链接),这个OS X端口的请求收到了响应"没有运气,它需要一些我无法创建的特定于linux的特定功能."
我对如何重定向输出的任何建议持开放态度(它不必使用ttysnoop).
谢谢!
我正在尝试使用Matplotlib在轴标签中生成非拉丁字符("μ")的图,如下所示:
matplotlib.pyplot.xlabel(u'Sarcomere Length (?m)')
Run Code Online (Sandbox Code Playgroud)
我在Linux上使用Cairo渲染器,我得到一个"盒子"而不是"μ":

它适用于重音拉丁字符(如"é").有任何想法吗?