在Python中将Hex转换为RGB值
在这里解决Jeremy的响应:将十六进制颜色转换为RGB,反之亦然,我能够获得一个python程序来转换预设的颜色十六进制代码(示例#B4FBB8),但是从最终用户的角度来看,我们不能要求人们进行编辑代码并从那里运行。如何提示用户输入一个十六进制值,然后从那里吐出一个RGB值?
到目前为止,这是我的代码:
def hex_to_rgb(value): value = value.lstrip('#')
lv = len(value)
return tuple(int(value[i:i + lv // 3], 16) for i in range(0, lv, lv // 3))
def rgb_to_hex(rgb):
return '#%02x%02x%02x' % rgb
hex_to_rgb("#ffffff") # ==> (255, 255, 255)
hex_to_rgb("#ffffffffffff") # ==> (65535, 65535, 65535)
rgb_to_hex((255, 255, 255)) # ==> '#ffffff'
rgb_to_hex((65535, 65535, 65535)) # ==> '#ffffffffffff'
print('Please enter your colour hex')
hex == input("")
print('Calculating...')
print(hex_to_rgb(hex()))
使用该行,print(hex_to_rgb('#B4FBB8'))
我可以吐出正确的RGB值,即(180,251,184)
这可能非常简单-我对Python仍然很粗鲁。
回答:
我相信这可以满足您的需求:
h = input('Enter hex: ').lstrip('#')print('RGB =', tuple(int(h[i:i+2], 16) for i in (0, 2, 4)))
(以上内容是针对Python 3编写的)
样品运行:
Enter hex: #B4FBB8RGB = (180, 251, 184)
写入文件
fhandle
在保留格式的同时使用句柄写入文件:
fhandle.write('RGB = {}'.format( tuple(int(h[i:i+2], 16) for i in (0, 2, 4)) ))
以上是 在Python中将Hex转换为RGB值 的全部内容, 来源链接: utcz.com/qa/401910.html