Python文件报错OSError:[Errno 22] Invalid argument处理

问题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,\n无法识别,有些转义符也会导致报错。
    2.路径最好手动输入,不要直接复制粘贴更改。
posted @ 2020-09-08 09:47  BeginnerY  阅读(4057)  评论(0编辑  收藏  举报