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

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 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程