挑战
当前者是元组时,我如何从(255, 255, 255, 0)到 '(255, 255, 255, 0)'?
细节:
我正在使用此处描述的方法将十六进制颜色转换为 rgba 颜色。我这样做是为了使用颜色作为带有不透明度元素的参数,如下所示:
color = 'rgba(255, 255, 255, 0)'
Run Code Online (Sandbox Code Playgroud)
您可能已经猜到了,参数必须是一个string类型。我已经把整数放在像这样的元组中
(255, 255, 255, 0)
Run Code Online (Sandbox Code Playgroud)
现在我需要将整个元组括在一个字符串中,就像'(255, 255, 255, 0)'进入我的最后一步:
'rgba(255, 255, 255, 0)'
Run Code Online (Sandbox Code Playgroud)
恐怕我在这里遗漏了一些明显且非常基本的 Python 元素,但是任何建议都会很棒!
恐怕没有简单的转换功能,但是,这应该有效:
t = (255, 255, 255, 0)
f'rgba({t[0]}, {t[1]}, {t[2]}, {t[3]})'
Run Code Online (Sandbox Code Playgroud)
更短:
t = (255, 255, 255, 0)
f'rgba{str(t)}'
Run Code Online (Sandbox Code Playgroud)
根据上下文,我可能更喜欢第一个选项,原因有两个:
str元组的实现。不太可能改变,但不太可能不代表不可能str元组的视图符合预期的字符串模式。一旦字符串模式发生变化,追踪和修复可能是一个噩梦般的错误。第一个选项明确地将表示与数据分开,并且还允许我们使用任何可迭代的,而不仅仅是元组。在这种情况下,使用类而不是元组可能是一个非常强大的想法。
| 归档时间: |
|
| 查看次数: |
168 次 |
| 最近记录: |