2013-07-12 41 views
0

我是python和編程的一般新手,我在Sublime Text上編寫了這段代碼,我看不到它中的錯誤。Python:無效的語法在第1行(文件<string>)

print("Please enter a quote you would like to use: ") 
quote = str(input()) 
print(quote.upper()) 
print() 
print(quote.lower()) 
print() 
print(quote.capitalise()) 
print() 
print(quote.title()) 

任何幫助將不勝感激。

非常感謝, 丹

+1

請給你的python版本或錯誤的整個回溯。 – zhangyangyu

回答

1

raw_input()更換input()

print("Please enter a quote you would like to use: ") 
quote = str(raw_input()) 

甚至:

quote = raw_input("Please enter a quote you would like to use: ") 
+1

不幸的是,你的答案中的代碼在一般情況下不起作用:或者'print()'是一個函數,'raw_input()'不存在(Python 3),或者'print'是一個語句(Python 2) 。 –

+2

@FrédéricHamidi,'print()'仍然可以在python 2中工作。 – mishik

+0

如果你從'__future__ import print_function'發出''或者給它傳遞一個參數,是的(所以我更新了我以前的評論,因爲它確實在這種情況下工作)。如果你傳遞了多個參數,Python 2會將它們解釋爲一個元組,而這通常不是你想要的。請參閱http://stackoverflow.com/q/12162629/464709。 –

0

的原因是不是有關是否使用raw_input()input()。這是關於首先進行輸入的。 Sublime Text不允許用戶輸入內容。參考這裏:Sublime Text 2 console input

您可以嘗試SublimeREPL

+0

我認爲OP意味着Sublime不會顯示任何語法錯誤,不是它是Sublime或其他東西的插件。 – mishik

+0

我已經寫了其他代碼已經工作,但是任何涉及用戶輸入字符串的代碼都會在第1行出現語法錯誤。那麼我應該替換Sublime嗎? – DCragg

+0

@ user2575745是的,每次你使用某些東西來接受輸入時(例如'input()'或'raw_input()',都會產生錯誤,因爲Sublime Text不允許用戶輸入輸入。如果你打算這樣做,是的 – TerryA