2022年7月3日星期日

Python: Jupyter Notebook 里打印彩色文本


问题:Jupyter Notebook 里 如何 print 彩色文字?

解决方案: 用 colorama,且不要执行 colorama.init()。


坑的点正是:不要执行 colorama.init()。

以下代码可以在 Jupyter Notebook 里显示彩色文字:

import colorama

print(colorama.Back.YELLOW + colorama.Fore.BLACK + 'text' + colorama.Back.RESET + colorama.Fore.RESET)


但用 colorama 的通常习惯是加 init,加了 init 在 Notebook 里就不行了,例如以下代码:

import colorama

colorama.init()

print(colorama.Back.YELLOW + colorama.Fore.BLACK + 'text' + colorama.Back.RESET + colorama.Fore.RESET)




但在普通的命令行环境,如 iPython、PyCharm 的 console,还是得加上 colorama.init()。

至于 Jupyter Notebook 不要执行 colorama.init() 的原因,可以参考此链接:

https://github.com/jupyter/notebook/issues/2284 


IPv6 的 fe80开头的地址

fe80开头的 ipv6 地址不是公网地址,没人给你分ip,自动协商的地址,通常无法用于上网。 现在各大运营商用的ipv6: 电信是240e开头的(240e::/20) 移动是2409开头的(2409:8000::/20) 联通是2408开头的(2408:8000::/20)