IPython端子外壳中对象的彩色表示

IPython端子外壳中对象的彩色表示,ipython,Ipython,如果我想在QtConsole或IPython笔记本中有一个对象的彩色表示,我只需要将\u repr\u html方法添加到objects类中 [1]中的:类测试(对象): 定义初始化(self,x): self.x=x 定义报告html(自我): 返回“”' 测试{%s} '''%self.x 在[2]中:测试(33) 测试{33} 这将给我一个漂亮的彩色表示,Test{将是绿色,33红色,}绿色 在IPython Shell的终端版本中,有没有一种跨平台的方法可以做到这一点 理想情况下,其工

如果我想在QtConsole或IPython笔记本中有一个对象的彩色表示,我只需要将
\u repr\u html
方法添加到objects类中

[1]中的
:类测试(对象):
定义初始化(self,x):
self.x=x
定义报告html(自我):
返回“”'
测试{%s}
'''%self.x
在[2]中:测试(33)
测试{33}
这将给我一个漂亮的彩色表示,
Test{
将是绿色,
33
红色,
}
绿色

在IPython Shell的终端版本中,有没有一种跨平台的方法可以做到这一点

理想情况下,其工作方式与以下模板相同:

[1]中的
:类测试(对象):
定义初始化(self,x):
self.x=x
定义报告外壳(自身):
返回{color.Green}Test{{color.Red}%s{color.Green}'%self.x

如果没有,我可以在自己的控制台应用程序中导入并使用IPython的内部跨平台着色系统吗?我查看了IPython代码库,但没有找到任何直接的使用方法:(

您可以使用IPython的
术语colors

一个最简单的例子是:

从IPython.utils.coloransi导入术语颜色作为颜色
类别测试(对象):
定义初始化(self,x):
self.x=x
定义报告(自我):
返回“{0}测试{{1}{2}{0}}}”。格式(color.Green,color.Red,self.x)

你知道我可以在IPython环境之外使用颜色这一术语吗?在POSIX系统上它工作正常,但在Windows上它只打印POSIX转义码。你可以检查colorama,看看这些问题:是的,我知道colorama,但由于IPython已经这样做了,我想避免额外的依赖:)