天天看点

python中invalid argument_Python创建文件报错OSError:[Errno 22] Invalid argument处理

问题:

windows平台下使用python open函数w模式打开文件报错“OSError: [Errno 22] Invalid argument: '../news/“消费升维”成零售业新风口?渠道多元同步跟进.txt'”

解决:

本来猜测是转义符的问题,但是使用python原字符串仍然不能解决问题。

后来发现其实是windows下文件的命名存在限制:

在Windows系统中,文件名不允许使用的字符有: < > / \ | : " * ?

在Windows系统中,文件名命名规则如下:

1)文件名最长可以使用255个字符;

2)可以使用扩展名,扩展名用来表示文件类型,也可以使用多间隔符的扩展名(如win.ini.txt是一个合法的文件名,但其文件类型由最后一个扩展名决定);

3)文件名中允许使用空格,但不允许使用下列字符(英文输入法状态):< > / \ | : " * ?;

4)windows系统对文件名中字母的大小写在显示时有不同,但在使用时不区分大小写。