我得到了“[errno 22]无效的论点:'test.txt \ r'

时间:2012-11-04 21:35:01

标签: python file text error-handling

我正在尝试一个允许你编辑文本文件的python程序,稍后我会在其他程序中使用这个功能,但我收到错误:[errno 22] Invealid参数:'test.txt \ r \ n ”。另外,我从来没有将\ r添加到test.txt。这是我的代码:

 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。该错误表明它位于add.write(text)部分的第7行。

没关系,我将open(file1, "br")更改为open(file1, "a"),现在工作正常。感谢所有帮助伙伴!!!

2 个答案:

答案 0 :(得分:4)

使用:

file1 = input().strip()

input()在结尾处返回新行,这会使文件名无效。

答案 1 :(得分:1)

使用input().strip()删除输入中的尾随换行符,可能是因为在终端或cmd中运行程序而导致的。