Python檔案報錯OSError:[Errno 22\] Invalid argument處理
阿新 • • 發佈:2020-09-08
問題1:
OSError: [Errno 22] Invalid argument: './img/https://st-cn.meishij.net/r/121/15/3441371/a3441371_159946333946794.jpg' 解決: 本來猜測是轉義符的問題,但是使用python原字串仍然不能解決問題。 後來發現其實是windows下檔案的命名存在限制: 在Windows系統中,檔名不允許使用的字元有: < > / \ | : " * ? 在Windows系統中,檔名命名規則如下: 1)檔名最長可以使用255個字元; 2)可以使用副檔名,副檔名用來表示檔案型別,也可以使用多間隔符的副檔名(如win.ini.txt是一個合法的檔名,但其檔案型別由最後一個副檔名決定); 3)檔名中允許使用空格,但不允許使用下列字元(英文輸入法狀態):< > / \ | : " * ?; 4)windows系統對檔名中字母的大小寫在顯示時有不同,但在使用時不區分大小寫。
問題2:
f = open('F:\Python 3.6\test.txt','r')
解決:
1.將 \ 換為 / ,或者 \\,這是因為Python中\t為換行符,而無法識別。
2.路徑最好手動輸入,不要直接複製貼上更改。