Mam słownika:Jak pozbyć się podwójnego ukośnika odwrotnego w ścieżce pliku ścieżki Pythona?
my_dictionary = {"058498":"table", "064165":"pen", "055123":"pencil"}
I iterację nad nim:
for item in my_dictionary:
PDF = r'C:\Users\user\Desktop\File_%s.pdf' %item
doIt(PDF)
def doIt(PDF):
part = MIMEBase('application', "octet-stream")
part.set_payload(open(PDF,"rb").read())
Ale otrzymuję ten błąd:
IOError: [Errno 2] No such file or directory: 'C:\\Users\\user\\Desktop\\File_055123.pdf'
Nie mogę znaleźć pliku. Dlaczego sądzi się, że w ścieżce pliku występują podwójne ukośniki odwrotne?
Istnieje tylko jeden ukośnik odwrotny. Widzisz reprezentację ciągów. Plik nie istnieje. –
Podwójny ukośnik odwrotny nie jest błędny, python drukuje/reprezentuje go w sposób użytkownika. Jeśli 'a = r'raw s \ tring'' i' b = 'raw s \\ tring'' (no' r 'i explicite double slash), wówczas oba są reprezentowane jako '' raw s \\ tring''. – aneroid