Как преобразовать строку в hex формат цвета?
Как с помощью input() получить hex код цвета?
Обычно я делал это так white = 0xffffff, но с преобразованием строки возникли проблемы
Мне нужно именно преобразование в hex, а не запись строки ffffff для дальнейшего преобразования в rgb
Код:
class Color:
def __init__(self, name, val):
self.name = name
self.value = hex(val)
def __str__(self):
return "\n{} - #{}\n".format(self.name, str(self.value).replace('0x', ''))
colors = []
for i in range(1):
n = input('Name: ')
v = input('Value: ')
colors.append(Color(n, v))
Пример ввода:
Name: White
Value: ffffff
Вывод:
White - #ffffff
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Я поменял:
class Color:
def __init__(self, name, val):
self.name = name
self.value = int(val, 16) # преобразуем из 16-ричного числа в int
def __str__(self):
return "\n{} - #{}\n".format(self.name, hex(self.value).replace('0x', '')) # а тут обратно из int в 16-ричное
colors = []
for i in range(1):
n = input('Name: ')
v = input('Value: ')
colors.append(Color(n, v))
print(colors[0])
Ввод:
Name: White
Value: ffffff
Вывод:
White - #ffffff