Python 将RGB转换为十六进制
我正在寻找一种方法来修改我的代码,将RGB像素数据转换为十六进制像素数据。例如将37、4、201转换为#2504C9。代码附加,如果有人知道如何做到这一点,我真的很感激!我在这里尝试了几种方法,但到目前为止还没有找到任何有效的方法Python 将RGB转换为十六进制,python,hex,rgb,Python,Hex,Rgb,我正在寻找一种方法来修改我的代码,将RGB像素数据转换为十六进制像素数据。例如将37、4、201转换为#2504C9。代码附加,如果有人知道如何做到这一点,我真的很感激!我在这里尝试了几种方法,但到目前为止还没有找到任何有效的方法 from PIL import Image import sys im = Image.open(r"C:\Users\AChri\Desktop\boio.png") px = im.load() w, h = im.size x = 0 y=
from PIL import Image
import sys
im = Image.open(r"C:\Users\AChri\Desktop\boio.png")
px = im.load()
w, h = im.size
x = 0
y= 0
while True:
if x >= w:
x = 0
y= y+1
else:
if y >= h:
print('Done!')
sys.exit()
else:
val = px[x, y]
print(px[x, y])
x = x+1
在px[x,y]中有一个元组(R,G,B),要将其打印为十六进制,只需执行以下操作:
print("#{:02X}{:02X}{:02X}".format(*px[x,y]))
或者,要使其适应您的代码:
val = "#{:02X}{:02X}{:02X}".format(*px[x,y])
print(val)
答案在这里:谢谢!它工作得很好!