2013-07-10 20 views
1

我创建的简单代码:的raw_input简单和条件

name = raw_input("Hi. What's your name? \nType name: ") 
age = raw_input("How old are you " + name + "? \nType age: ") 

if age >= 21 
    print "Margaritas for everyone!!!" 
else: 
    print "NO alcohol for you, young one!!!" 

raw_input("\nPress enter to exit.") 

,直到我到了“如果”声明它的伟大工程......它告诉我,我使用无效的语法。我试图学习如何使用Python,并与代码搞砸了很多,但我不知道我做错了什么(可能是非常基本的东西)。

回答

4

应该是这样的:

name = raw_input("Hi. What's your name? \nType name: ") 
age = raw_input("How old are you " + name + "? \nType age: ") 
age = int(age) 

if age >= 21: 
    print "Margaritas for everyone!!!" 
else: 
    print "NO alcohol for you, young one!!!" 

raw_input("\nPress enter to exit.") 

你失踪结肠。此外,你应该从字符串转换为int。

希望这会有所帮助!

2

首先raw_input返回一个字符串不是整数,所以使用int()。否则,如果条件if age >= 21总是会是假的:

>>> 21 > '' 
False 
>>> 21 > '1' 
False 

代码:

name = raw_input("Hi. What's your name? \nType name: ") 
age = int(raw_input("How old are you " + name + "? \nType age: ")) 

的语法错误是因为有你在if线忘了:

if age >= 21 
      ^
      | 
     colon missing 
2

用python,缩进非常重要。您必须使用正确的缩进或它不起作用。另外,你需要的,如果以后:和其他

尝试:

if age >= 21: 
    print #string 
else: 
    print #other string