2012-11-04 77 views
2

我有一個Python程序,讓您可以編輯的文本文件進行實驗,我將在其他程序稍後使用此功能,但我得到的錯誤:[錯誤22] Invealid的說法:「test.txt的\ R」還我從來沒有添加\ r到TEST.TXT這裏是我的代碼:我得到「[錯誤22]無效的說法:‘test.txt的 R’

def menu(): 
    print("Type in the full name of the text file you would like to add to.") 
    file1 = input() 
    with open(file1, "br") as add: 
     print("What do you want to write?") 
     text = input() 
     add.write(text) 
menu() 

好了,新的問題我。編輯的代碼,所以現在它說file1 = input().strip()並罰款所有工作,直到我得到了另一個錯誤的錯誤是:。io:UnsupportedOperation: write錯誤說,這是第7行中,說add.write(text)部分

沒關係,我改變了與open(file1, "br")open(file1, "a"),它現在工作正常。感謝您的所有幫助人!

回答

4

用途:

file1 = input().strip() 

input()末返回新線,使文件名無效。

1

使用input().strip(),去掉你輸入後的新行,它可能已經來到了由於終端或CMD運行程序。

+0

好的,我使用的是cmd,但還有一件事,我是Python的新手,那麼你能解釋一下「.strip()」的作用嗎? –

+0

strip()從字符串中刪除所有尾隨和前導的'\ n','\ r \ n','\ n'。 –

+0

嗯謝謝你,對不起noob麻煩。 –

相關問題