RGB颜色列表如[255,0,0]二进制,如b'\ xff \ x80 \ x00'(用于blender纹理缓冲区)

时间:2013-08-27 21:23:54

标签: python python-3.x binary integer type-conversion

抱歉,如果它是重复的,我发现了很多指针,但没有回答以下内容;

我想转换那种rgb值列表:

rgb = [ 255,128,0 ]

这种二进制格式:

Brgb = b'\xff\x80\x00'

这是在混合器中提供GL纹理缓冲区并生成均匀纹理。

到目前为止,我的意思是,自从10分钟后点击那里并在那里进行测试,我用了这个跛脚,但工作,代码:

rgb = [255,128,0]
rgb = "\\x%02X\\x%02X\\x%02X" % (rgb[0],rgb[1],rgb[2])
brgb = eval("b'%s'"%rgb)

logic.tex.source.load( brgb * (256*256),256,256)
# got this orange texture in my buffer

你会怎么做到这一点? 非常感谢

1 个答案:

答案 0 :(得分:4)

只需将整数直接转换为bytes

>>> rgb = [255, 128, 0]
>>> bytes(rgb)
b'\xff\x80\x00'

整数序列直接解释为字节值。