用python的open函数时 参数文件路径里存在英文问号时会报错“Invalid argument”
在stackoverflow上问了下,有大佬告诉我“Install linux. Or something else that isn't Windows. Alternatively, accept the fact that a file name can't contain a question mark.(安装linux。 或者其他不是Windows的系统。 或者,接受文件名不能包含问号的事实。)”
目前解决办法是 把英文问号替换成了中文问号,但是感觉不够优雅,如果再有别的我还不知道的不允许使用的字符呢?大家有更好的处理办法吗?
报错的代码片段如下:
savePath = "E:\\Desktop\\output\\?.html"
file = open(savePath, 'wb')
报错信息如下:
Traceback (most recent call last):
File "Main.py", line 35, in <module>
crawler.testSaveContent("E:\\Desktop\\output\\?.html")
File "E:\Desktop\MyCrawler.py", line 77, in testSaveContent
file = open(savePath, 'wb')
OSError: [Errno 22] Invalid argument: 'E:\\Desktop\\output\\?.html'
python版本:3.6.3操作系统:win10
1 回答
浮云间
TA贡献1829条经验 获得超4个赞
操作系统说不能用就是不能用,只能换别的,至于文件名中不允许的符号列表可以去翻对应操作系统的文档,当然一般搜一搜就有了,至于Windows你可以重命名一个文件,然后输入英文问号,立刻就会提示你哪些字符不可用于文件命名。
添加回答
举报
0/150
提交
取消