Lindoz 2021-05-21 18:26 采纳率: 66.7%
浏览 564
已采纳

python编写颜色混合器

红色、绿色和蓝色被称为三原色,因为它们不能通过其他的颜色混合得到。而当两种原色混合时,将得到一种新颜色,例如: 当红色和绿色混合时,将得到黄色; 当红色和蓝色混合时,将得到紫色; 当绿色和蓝色混合时,将得到青色; 要求编写一个程序,要求输入两种原色,输出它们混合得到的新颜色,如果输入的不是原色,则输出错误提示信息。

  • 写回答

3条回答 默认 最新

  • CSDN专家-HGJ 2021-05-21 18:46
    关注

    用itertools的permutations列出颜色对,再对颜色对进行判断。

    from itertools import permutations
    colors=['red','green','blue']
    colors=permutations(colors,2)
    #print(list(colors))
    
    mixed_color={}
    for item in list(colors):
        if 'red' in item and 'green' in item:
            mixed_color.update({item:'yellow'})
        if 'red' in item and 'blue' in item:
            mixed_color.update({item: 'purple'})
        if 'blue' in item and 'green' in item:
            mixed_color.update({item: 'cyan'})
    print(mixed_color)
    
    inp=tuple(input('输入两种原色,空格隔开:').split())
    if inp in mixed_color:
        print(mixed_color[inp])
    else:
        print('输入不是原色。')
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog