2013-10-28 101 views
0
flag=False 
if color1=="blue": 
    color2=input("Do you want to mix red or yellow with blue?") 
    color2=color2.lower() 
    while flag==False: 
     if color2=="red" or color2=="yellow": 
      flag = True 
     else: 
      color2=input("That is not a valid choice. Enter either red or yellow to mix\ with", color1) 
    if color2=="red": 
     print("The color you made is purple") 
    else: 
     print("The color you made is green") 
flag=False 
elif color1=="red": 
    color2=input("Do you want to mix blue or yellow with red?") 
    color2=color2.lower() 
    while flag==False: 
     if color2=="blue" or color2=="yellow": 
      flag = True 
     else: 
      color2=input("That is not a valid choice. Enter either blue or yellow to\ mix with", color1) 

我遇到了一个问题,其中有一条elif语句朝着中间一行说“elif color1 ==”红色“:”。为了得到一些背景知识,这是一个简单的程序,它将混合三种原色。Python说elif语句的语法错误

回答

3

假设在你的程序中的缩进是一样的,因为它出现在你的问题,该行flag=False之前被缩进elif需求,否则解析器会认为你当你离开if块事实上没有。

+0

谢谢youuuu!我从来不知道这个!你不知道我有多宽慰。我花了将近30分钟试图解决这个问题。^- ^ –