2012-02-28 146 views
0

嗨,我正在使用Python進行編程,並且在主函數中不斷收到語法錯誤。在if語句後, 「if points> = 9 < = 51:」Python告訴我冒號是語法錯誤。我寫了類似於這個任務的Python代碼,我似乎無法找到問題。誰能幫我?if語句中的Python語法錯誤

非常感謝。

def variable(points): 
if points >= 9 <= 51: 
    print('Valid Points') 
else: 
    print('Invalid Points') 

return points 

def main(): 
points = int(input('Enter how many points you scored: ') 
if points >= 9 <= 51: 
    points = variable(points) 
else: 
    points = variable(points) 

main() 
+3

'if points> = 9 <= 51:'不是一個賦值,它是一個比較。這行代碼是正確的,但它可能不是你想要的。例如,如果分數是「100」,它將評估爲「真」,因爲「9」總是小於「51」。你可能想'如果9 <=分<= 51:'。 – 2012-02-28 00:45:56

+0

請檢查關於'input()'和'raw_input()'之間差異的文檔。我非常懷疑你想讓用戶輸入任意的python表達式! – ThiefMaster 2012-03-13 14:51:06

回答

3

您的語法和縮進是有點關閉。嘗試

>>> def variable(points): 
...  if 9<= points<= 51: 
...   print('Valid Points') 
...  else: 
...   print('Invalid Points') 
... 
... 
>>> variable(34) 
Valid Points 

,並同樣適用於你的def main():,也有在

points = int(input('Enter how many points you scored: ') 
1
從不平等問題

除了缺少paranthesis,你忘了尾隨)

points = int(input('Enter how many points you scored: ') 
+0

ahhhh現在這是問題...我想我沒有付出密切的注意。非常感謝,現在它可以工作。 – NateBUProgrammer 2012-02-28 00:43:50

0

你忘了關閉一個paren。

points = int(input('Enter how many points you scored: ')) 
1

縮進是錯誤的並且缺少假設。

def variable(points): 
    if points >= 9 <= 51: 
     print('Valid Points') 
    else: 
     print('Invalid Points') 

    return points 

def main(): 
    points = int(input('Enter how many points you scored: ')) 
    if points >= 9 <= 51: 
     points = variable(points) 
    else: 
     points = variable(points) 

main()