IPython笔记本和Qt控制台都支持显示对象的丰富表示。这是通过定义例如_repr_html_
方法来完成的。
问题在于这两个控制台以不同方式呈现HTML。是否有一种方法可以检测运行在ipython qtconsole
下,以便我可以使用更基本的HTML集?最好是文档化的方法,不太可能在未来出现问题。
IPython笔记本和Qt控制台都支持显示对象的丰富表示。这是通过定义例如_repr_html_
方法来完成的。
问题在于这两个控制台以不同方式呈现HTML。是否有一种方法可以检测运行在ipython qtconsole
下,以便我可以使用更基本的HTML集?最好是文档化的方法,不太可能在未来出现问题。
我有一个类似的问题。在IPython终端中进行颜色设置需要调用Windows DLL,但是qtconsole中的颜色似乎支持基于Linux的转义序列...无论如何,这是我发现的。它很丑陋...但至少可以告诉你终端与qtconsole之间的区别...哦,对了,我还没有尝试过笔记本电脑:
import __main__
if hasattr(__main__,"get_ipython"):
import IPython.kernel.zmq.zmqshell as z
if isinstance(get_ipython(), z.ZMQInteractiveShell):
print 'yep...its qtconsole'