我创建了简单的代码:
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.")
它很有用,直到我得到'if'语句...它告诉我我使用了无效的语法。
我正在努力学习如何使用Python,并且对代码进行了大量的讨论,但我无法弄清楚我做错了什么(可能是非常基本的东西)。
答案 0 :(得分: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.")
你错过了冒号。此外,您应该将age从string转换为int。
希望这有帮助!
答案 1 :(得分:2)
首先raw_input
返回不是整数的字符串,因此请使用int()
。否则if条件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 :(得分:2)
使用python,缩进非常重要。你必须使用正确的缩进,否则它将无法工作。此外,在if和else之后需要:
尝试:
if age >= 21:
print #string
else:
print #other string