Rab*_*ski 48 python jupyter-notebook
是否有可能在IPython笔记本中以某种不同的颜色显示某些输出?例如,有些东西:
print("Hello Red World", color='red')
Run Code Online (Sandbox Code Playgroud)
小智 55
当然,笔记本有自己的语法高亮.所以我在其他地方使用颜色时要小心,只是为了避免让自己或其他人更难以阅读(例如,输出应该只是黑色,但如果有异常,你会得到红色的部分).
但是(令我惊讶的是),您似乎可以使用ANSI转义码(即使在浏览器中).至少,我可以:
在默认的Python提示符下:
>>> print("\x1b[31m\"red\"\x1b[0m")
"red"
Run Code Online (Sandbox Code Playgroud)
在笔记本中:
In [28]: print("\x1b[31m\"red\"\x1b[0m")
"red"
Run Code Online (Sandbox Code Playgroud)
(显然,我在这里欺骗了SO的语法高亮,所以在两个例子中都用红色打印"红色".我不认为SO允许用户为文本设置颜色.)
我真的不知道另一种获取颜色的方法.
有关ANSI转义码的更多信息,我建议维基百科的文章.如果您发现上面的详细信息,您当然可以围绕此编写一个包装函数.
ana*_*thi 22
你可以使用这个库termcolor,你可以在pypi中获得python的所有其他官方库
请参阅pypi.python.org中的文档或按照以下步骤操作
- pip安装termcolor
- 然后转到ipython
码
from termcolor import colored
print(colored('hello', 'red'), colored('world', 'green'))
print(colored("hello red world", 'red'))
Run Code Online (Sandbox Code Playgroud)
输出:
hello world
hello red world
Run Code Online (Sandbox Code Playgroud)
第一个参数是您想要在控制台上打印的内容,第二个参数使用该颜色
alv*_*vas 18
这是一个快速的黑客:
from IPython.display import HTML as html_print
def cstr(s, color='black'):
return "<text style=color:{}>{}</text>".format(color, s)
left, word, right = 'foo' , 'abc' , 'bar'
html_print(cstr(' '.join([left, cstr(word, color='red'), right]), color='black') )
Run Code Online (Sandbox Code Playgroud)
[OUT]:
如果你只想要一种颜色: html_print(cstr('abc', 'red'))
Mat*_*att 13
不是原始的Python打印.您必须_repr_html_
在对象上定义并返回或调用IPython.lib.display(object_with_repr_html)
.
我想你可以覆盖内置打印件来自动完成...
你可以从激发http://nbviewer.ipython.org/5098827,代码在GitHub上一个要点,ML讨论在这里.
小智 13
与@alvas提到的类似,但更简单
from IPython.display import Markdown
display (Markdown('this is in <span style="color: #ff0000">red</span> color.'))
Run Code Online (Sandbox Code Playgroud)
在 Jupiter notebook 中,我们可以使用颜色标记以不同颜色打印输出 我们可以通过三种方式使用颜色标记。
让我们看看如何在笔记本中打印黄色。
print('\033[93m output')
print('\033[93m' 'output')
print('\033[93m' + 'output')
一些颜色是:
您可以更改最后一个数字并获得其他颜色。
有一个彩色库(pip install colored
),您可以使用它来修改字符串以获取颜色代码以修改其打印方式。使用示例:
import colored
print(colored.bg("white") + colored.fg("red") + "Hello world!")
Run Code Online (Sandbox Code Playgroud)
感谢 @alvas 函数并添加另一个函数,我们得到了一种非常简单的打印方法
from IPython.display import HTML as html_print
from IPython.display import display
def cstr(s, color='black'):
return "<text style=color:{}>{}</text>".format(color, s)
def print_color(t):
display(html_print(' '.join([cstr(ti, color=ci) for ti,ci in t])))
print_color((('hello my name is', 'black'),('jhjfd','red')))
print_color((('hello my name is', 'green'),))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
26584 次 |
最近记录: |