Bootstrap

python中rgb颜色_自定义RGB颜色与Python诅咒

我正在用Python编写一个程序,使用标准库中的curses模块。在

我希望我的程序只是退出,如果它不能使用自定义颜色我指定的RGB三元组。在

我有一些入门代码,看起来像:import curses

def main(stdscr):

if not curses.can_change_color():

raise Exception('Cannot change color')

curses.init_color(curses.COLOR_BLACK, 999, 0, 0)

curses.init_pair(1, curses.COLOR_BLACK, curses.COLOR_WHITE)

curses.init_pair(2, curses.COLOR_WHITE, curses.COLOR_BLACK)

stdscr.addstr('hello', curses.color_pair(1))

stdscr.addstr(' world', curses.color_pair(2))

stdscr.getch()

curses.wrapper(main)

我得到的结果是:

hs7xY.png

我原以为黑色会被红色取代。在

我是不是误解了docs?如何使curses符合我要使用的自定义RGB颜色?或者至少失败了告诉我终端不支持它?在

curses的文档here似乎暗示失败时它将返回一个错误,而CPython源似乎propagate curses errors非常忠实。在

如果有关系的话,我在OSX10.11上,我在用自制程序安装的Python3上测试。但我也得到了同样的效果OSX的内置Python解释器。在

编辑:

稍微修改示例代码以显示颜色内容:

^{pr2}$

这次的结果是:

zNSJi.png

;