Python 转换RGB颜色值的示例代码

yipeiwu_com5年前Python基础

题目:转换RBG颜色值

我们知道在网页中的颜色值设置都是用16进制的RGB来表示的,比如#FFFFFF,表示R:255,G:255,B:255的白色。
现在请设计一个函数可以转换RGB的16进制至10进制,或者转换10进制至16进制输出格式。

例:

print( color("#FFFFFF"))
>>>(255, 255, 255) 
print( color((255,255,255))
>>> #FFFFFF

Python源码:

def color(value):
  digit = list(map(str, range(10))) + list("ABCDEF")
  if isinstance(value, tuple):
    string = '#'
    for i in value:
      a1 = i // 16
      a2 = i % 16
      string += digit[a1] + digit[a2]
    return string
  elif isinstance(value, str):
    a1 = digit.index(value[1]) * 16 + digit.index(value[2])
    a2 = digit.index(value[3]) * 16 + digit.index(value[4])
    a3 = digit.index(value[5]) * 16 + digit.index(value[6])
    return (a1, a2, a3)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python八皇后问题的解决方法

本文为大家分享了python八皇后问题的解决方法,供大家参考,具体内容如下 题目: 给定一个 N*N 正方形棋盘,在上面放置 N个棋子,又叫皇后,使每两个棋子都不在同一条横线上、竖线上...

Python利用heapq实现一个优先级队列的方法

Python利用heapq实现一个优先级队列的方法

实现一个优先级队列,每次pop的元素要是优先级高的元素,由于heapq.heapify(list)默认构建一个小顶堆,因此要将priority变为相反数再push,代码如下: imp...

python递归法实现简易连连看小游戏

python递归法实现简易连连看小游戏

问题:简单版连连看小游戏 一个分割成w*h个正方格子的矩形板上,每个正方格子可以有游戏卡,也可以没有游戏卡 两个游戏卡之间有一条路径相连需满足以下三个条件: 1.路径只包含水平和垂直的直...

Python中关键字is与==的区别简述

本文以简单示例分析了python中关键字is与 ==的区别,供大家参考一下。 首先说明一下Python学习中几个相关的小知识点。 Python中的对象包含三要素:id、type、valu...

Python 实现两个列表里元素对应相乘的方法

方法一: 结合zip函数,使用map函数: List1 = [1,2,3,4] List2 = [5,6,7,8] List3 = map(lambda (a,b):a*b,zip(...