2017-05-28 120 views
0

我是有點 Python新手,但我有足夠的知識來了解我在做什麼。我想要做的是爲.txt文件(以及變量)寫幾行,然後打印5個這些字符。Python3讀取和寫入.txt文件

import os 
username = "Chad_Wigglybutt" 
file = open("testfile.txt", "w") 
file.write("Hello .txt file, ") 
file.write("This is a test, ") 
file.write("Can this write variables? ") 
file.write("Lets see: ") 
file.write(username) 
file.close() 

它然後創建沒有問題的文件,但是當我添加

print file.read(5) 

的代碼,這讓我對file.read語法錯誤,我不知道爲什麼。我已經在互聯網上了幾個小時了,而且我什麼都找不到。無論我在谷歌搜索方面都非常糟糕,我是一個白癡,或者某個東西壞了,或者兩者兼而有之。任何提示/想法? :/

回答

1

您正在編寫Python 3代碼。在Python 3中,print is a function,並不是一個特殊的聲明。函數調用需要括號:

print(file.read(5)) 
+1

他可能還需要打開文件。 –

+1

@StephenRauch:或許,但'SyntaxError'不會來自未能打開文件。我假設有一些省略的代碼,我不打算嘗試進行心理調試。 – ShadowRanger

+0

python3通常對生成一個「你需要parens來調用print」的錯誤很好,但是如果行中有其他的括號,它會放棄並給出一個空的'SyntaxError:'(例如這種情況)。 –