末的說法時,我不知道爲什麼我得到,因爲我有完全做了錯誤的書上說Python中的SyntaxError使用帶有打印功能
>>> os.getcwd()
'C:\\Users\\expoperialed\\Desktop\\Pyt…'
>>> data = open('sketch.txt')
>>> print(data.readline(),end="")
SyntaxError: invalid syntax
末的說法時,我不知道爲什麼我得到,因爲我有完全做了錯誤的書上說Python中的SyntaxError使用帶有打印功能
>>> os.getcwd()
'C:\\Users\\expoperialed\\Desktop\\Pyt…'
>>> data = open('sketch.txt')
>>> print(data.readline(),end="")
SyntaxError: invalid syntax
它看起來像你跑錯了Python版本。公司目前旗下有2個版本的Python的跑來跑去,2和3。在Python 2,print
是一個語句,所以你應該改變你的代碼太
print data.readline(), # The trailing comma to stop the newline
而在3這是一個功能,應該用您的圖書節目。
它看起來像你的書是在Python 3所以你應該升級你的Python(對於一個初學者來說,沒有理由不使用Python 3)
我覺得你的問題是,你有關於Python 2.x和正在使用Python 3.x的語法。在Python 3.x中,print
是內置的,可以像那樣使用。但是,在2.x中,它是一個關鍵字,不能。如果你是在2.x中,做到這一點:
print data.readline(),
的一種方式,看看你所使用Python的版本是這樣的:
import sys
if sys.version_info.major == 2:
# We are running 2.x
elif sys.version_info.major == 3:
# We are running 3.x
,或者從終端:
$ python --version
解決此問題的最佳方法可能是升級到Python 3.x.但是,如果您不能,那麼您可能需要查看__future__
模塊。它可以讓這個你可以在2.x的使用Python 3.X的print
功能:
>>> from __future__ import print_function
>>> print("yes!")
yes!
>>> print("a", "b", sep=",")
a,b
>>>
增加了缺失,(這是什麼結束='') –
@AnttiHaapala:啊,好的電話。我忘了那個。 – iCodez
或者,使用打印功能像你想在Python 2:
>>> from __future__ import print_function
這會盡管由於__future__
模塊的工作方式而需要位於Python程序的頂部。
+1 - 你的帖子就像我添加到我的答案一樣! – iCodez
你使用的是什麼python版本? 'python --version' – jozefg
檢查你的Python版本。在Python 3之前,'print'不是一個函數,如果你試圖像這樣調用它,這就是2.x給出的錯誤。 –
該版本是2.7.4 –