1. Introduction
다른 사람의 코드를 보다가 이런 것을 발견했다.
def _from_rgb(rgb):
"""translates an rgb tuple of int to a tkinter friendly color code
"""
return "#%02x%02x%02x" % rgb
rgb 튜플을 tkinter에 맞는 색상 코드로 바꾸는 함수랜다.
2. Analysis
c에서 printf 문자열 포맷팅한 사람은 알겠지만 %는 문자열 뒤에 인수로 대체하겠다는 뜻이다.
16진수는 보통 x로 표현하는데 02x는 2자리를 사용할 것이며, 빈자리는 0으로 채우겠다는 의미이다.
맨 앞에 #은 그냥 의례적으로 16진수 색상 코드앞에 붙이는 듯하다.
내가 놀란 것은 튜플안에 개수가 맞기만 하면, 인수들이 문자열안에 알아서 순서대로 착착들어간다는 것이다.
3. Practice
print(_from_rgb((255, 100, 37)))
>> #ff6425