windows--OSError: [Errno 22] Invalid argument: '\u202aE:/desk/Desktop/test.txt' 读取文件的坑


准备打开文件时,报了如下错误:

 

在路径中出现了这个Unicode 202a字符,导致了这个错误。

 

这玩意是哪里来的?

复制windows文件属性的时候复制下图中的路径而来的。

 

 

解释:

这个字符的含义是left to right,也就是从左到右的阅读顺序,在写代码的时候显示不出来,但是在命令行中可以显示出来。

感受一下,复制下面的这一句话,分别放在命令行和Pycharm中

 with open(r'‪E:/desk/Desktop/test.txt', 'r') as file:

 

解决方案:

鼠标放到E后面,然后backspace向左删除一个字符,会发现显示上没有发生变化,但是控制字符已经被删除了。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM