将整数转换为CSS颜色
可能重复的问题:
将RGB整数转换为RGB - Python
我想用Python把一个整数转换成六位的十六进制颜色代码,这样我就可以在CSS中用它作为背景颜色。有没有什么好办法?
这个整数是Django模型的主键。
2 个回答
5
如果你手里只有一个整数,那么用 "#" + hex(value)
就能得到合适的颜色代码。不过,如果你有一个包含三个0到225之间整数的元组,那你就需要把这三个数都转换成十六进制的值,如果需要的话还要补齐,然后把它们连接在一起。你可以通过一次字符串格式化操作来完成这个。
hex = "#%02x%02x%02x" % (r, g, b)
这里的 %02x
意思是把数字补齐到两位数,而 x
则表示把它转换成小写的十六进制。如果你想要大写的,可以用 X
。
10
把一个整数转换成6位的十六进制数:
In [10]: '{0:06X}'.format(16746513)
Out[10]: 'FF8811'
检查这个十六进制数是否和这个整数相等:
In [9]: int('FF8811',16)
Out[9]: 16746513