|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
代码如下:
- #将(255,255,255)RGB--->#FFFFFF
- def base_10_system_to_hex(args=(None,None,None)):
-
- str_part = "#"
- for each in args:
- if each <= 255:
- str1 = hex(each)[-2:]
- str_part += str1
- else:
- print("Error:%d 不在0-255之间"%each)
- return None
- return str_part.upper()
- #将#FFFFFF ---> (255,255,255)RGB
- def hex_to_base_10_system(args):
- if args[0] == '#':
- #只取#后面的字母部分
- args_slice = args[1:]
- #全转大写
- args_slice_upper = args_slice.upper()
- if args_slice_upper <= 'FFFFFF':
- print("---------")
- #转化成10进制
-
- args_1 = args_slice_upper[:2]
- args_1 = "0x"+args_1
- int_1 = int(args_1,16)
- args_2 = args_slice_upper[2:4]
- args_2 = "0x"+args_2
- int_2 = int(args_2,16)
- args_3 = args_slice_upper[4:]
- args_3 = "0x"+args_3
- int_3 = int(args_3,16)
- #print(int_1,int_2,int_3,type(int_1))
- tp = (int_1,int_2,int_3)
- #print("tp:",tp)
- return tp
-
- else:
- print("%s不在'#0000-#FFFFFF'范围之内")
- return None
-
- def color(args):
- try:
- if args[0] == '#':
-
- hex_to_base_10_system(args)
- if isinstance(args[0],int):
-
- base_10_system_to_hex(args)
- except Exception as t:
- print(t)
-
-
复制代码
只要不是用color方法都是没问题的,
- >>> hex_to_base_10_system('#ffffff')
- ---------
- (255, 255, 255)
复制代码
- >>> base_10_system_to_hex((255,255,255))
- '#FFFFFF'
复制代码
但是只要调用了color方法,
- >>> color("#ffffff")
- ---------
复制代码
并没有返回值,这个问题好奇怪,好像
这个判断去掉了,其中一个转RGB的方法就有返回值了,不知道怎么回事》?
|
|