2016-06-30 5 views
0

Ich versuche eine Funktion zu schreiben, die eine Datei nimmt und eine Liste zurückgibt. Aber es funktioniert nicht. Stattdessen heißt es:Ich bekomme einen Fehler "[Errno 22] ungültiges Argument" beim Versuch, die Datei zu öffnen

'IOError: [Errno 22] Invalid argument: 'C: \ Python32 \ x07ssignment3 \ wordlist.txt''

, wenn ich das Modul

words_file_name = 'C:\Python32\assignment3\wordlist.txt' 
words_file = open(words_file_name, 'r') 

def read_words(words_file): 
    words_list = words_file.readlines() 
    return words_list 

Antwort

2

zu laufen versuchen Brechen Sie die umgekehrten Schrägstriche ab oder verwenden Sie ein unverschlüsseltes Zeichenfolgenliteral. Andernfalls wird \a in \x07, was die Hexadezimaldarstellung des Escape-Zeichens \a ist. Ich würde empfehlen, dafür rohe Strings zu verwenden, damit Sie nicht mit zusätzlichen Backslashes arbeiten müssen.

words_file_name = r'C:\Python32\assignment3\wordlist.txt' 
       ^
0

Sie können dies vermeiden, in Ihrem \ assignement \ a durch die Markierung als \\. Wenn Sie \ b, \ n, \ r, \ t usw. in Ihrem Verzeichnispfad finden, ersetzen Sie sie durch einen doppelten Schrägstrich.

Verwandte Themen