Python代码阅读(第83篇):RGB与HEX相互转换

Python 代码阅读合集介绍:为什么不推荐Python初学者直接看项目源码

本篇阅读的代码实现了将RGB色彩格式与HEX色彩格式相互转换。

本篇阅读的代码片段来自于30-seconds-of-python。

rgb_to_hex

def rgb_to_hex(r, g, b):
  return ('{:02X}' * 3).format(r, g, b)

# EXAMPLES
rgb_to_hex(255, 165, 1) # 'FFA501'

rgb_to_hex函数接收一个(r, g, b)格式的色彩编码,返回其HEX表示。

RGB的三个分量转化成十六进制,并按顺序拼接显示,就得到了HEX格式。函数使用'{:02X}'格式化RGB分量,将其转化为两位的十六进制。其中X表示十六进制。

hex_to_rgb

def hex_to_rgb(hex):
  return tuple(int(hex[i:i+2], 16) for i in (0, 2, 4))

# EXAMPLES
print(hex_to_rgb('FFA501')) # (255, 165, 1)

hex_to_rgb函数接收一个HEX格式的色彩表示,返回一个RGB元组。

函数通过hex[i:i+2]截取HEX表示的对应字符串,并使用class int(x, base=10),来构造int类型的数字,指定base = 16

你可能感兴趣的:(Python代码阅读(第83篇):RGB与HEX相互转换)