如何将8位颜色的表示转换为相应的python诅咒颜色?

如何将8位颜色的表示转换为相应的python诅咒颜色?,python,curses,Python,Curses,我试图在我的终端应用程序中显示低分辨率图像,内置python诅咒。我使用numpy获取图像每个像素的rgb颜色。我把每个像素都换成了相应的8位颜色,使用这个:color=int((r*6/256)*36+(g*6/256)*6+(b*6/256)-1并使用color作为新的init\u-pair,除了颜色之外,一切都正常,它们甚至不相似。所以我的问题是:有没有办法将8位颜色的表示转换为256种python诅咒颜色中相应的一种 我的代码中有一部分: def show_image(h, w, img

我试图在我的终端应用程序中显示低分辨率图像,内置python诅咒。我使用
numpy
获取图像每个像素的rgb颜色。我把每个像素都换成了相应的8位颜色,使用这个:
color=int((r*6/256)*36+(g*6/256)*6+(b*6/256)-1
并使用
color
作为新的
init\u-pair
,除了颜色之外,一切都正常,它们甚至不相似。所以我的问题是:有没有办法将8位颜色的表示转换为256种python诅咒颜色中相应的一种

我的代码中有一部分:

def show_image(h, w, img_arr, window):
    for y in range(h):
        for x in range(w):
            pix = img_arr[y][x]
            color = int((pix[0]*6/256)*36 + (pix[1]*6/256)*6 + (pix[2]*6/256) - 1)
            curses.init_pair(color, color, color)
            window.addstr(10+y, x+1, "#", curses.color_pair(color))

您必须告诉curses颜色是什么,例如,使用(这只适用于处理颜色初始化的终端,使用具有initc的终端描述)。另外,在
init\u pair
中使用颜色值作为对号可能不会按照您的意愿工作。

您必须告诉诅咒者颜色是什么,例如,使用(这只适用于处理颜色初始化的终端,使用具有
initc
的终端描述)。另外,在
init\u pair
中使用颜色值作为对号可能不会按照您的意愿工作