在python 3中将十六进制解码为十进制的问题

时间:2019-02-21 14:34:29

标签: python python-3.x

早/午/晚! 我正在制作程序,却遇到一个问题。该程序应根据给定的文本创建QR码,并将其颜色更改为RGB或HEX中的给定颜色。但是,当我将十六进制颜色代码转换为RGB“解释器” ...好了,您会看到此问题:输入-61c3ff和输出应显示R = 61 TO十进制(97),G = c3 TO十进制( 195)和B = ff TO十进制(255)。但是在输出中,我只能看到R = 6,G = 12,B = 15。 这是我的代码的一部分,必须识别给定的是哪个颜色代码:RGB或HEX,并且必须将HEX“转换”为RGB(例如,RGB中的{#} 9effec将为158255236)。

container

如果您需要完整的代码-https://pastebin.com/yCgK2KwU

1 个答案:

答案 0 :(得分:6)

您的问题是由错误的切片引起的,请考虑以下示例:

color = "61c3ff"
print(color[0:1]) #6
print(color[2:3]) #c
print(color[4:5]) #f

如您所见,以str的形式对[t:t+1]进行切片得到了str,长度为1,只需在每个切片中增加第二个值,它就可以正常工作: / p>

color = "61c3ff"
print(color[0:2]) #61
print(color[2:4]) #c3
print(color[4:6]) #ff