IOError: [Errno 22] invalid mode ('r') or

2019-01-07 08:05发布

问题:

This question already has an answer here:

  • Region: IOError: [Errno 22] invalid mode ('w') or filename 4 answers

What is wrong with the following:

test_file=open('c:\\Python27\test.txt','r')

回答1:

\t is a tab character. Use a raw string instead:

test_file=open(r'c:\Python27\test.txt','r')

or double the slashes:

test_file=open('c:\\Python27\\test.txt','r')

or use forward slashes instead:

test_file=open('c:/Python27/test.txt','r')


回答2:

always use 'r' to get a raw string when you want to avoid escape.

test_file=open(r'c:\Python27\test.txt','r')


回答3:

\ is an escape character in Python. \t gets interpreted as a tab. If you need \ character in a string, you have to use \\.

Your code should be:
test_file=open('c:\\Python27\\test.txt','r')



回答4:

\t in a string marks an escape sequence for a tab character. For a literal \, use \\.