我们一般会遇到三种问题
1.错误提示为:[Errno 2] No such file or directory:
当我遇到这个问题的时候我以为是\ 转义出现了问题,我用了\ r''都不行 后来我发现是vs自动加了文件的后缀
比如:
你的文件名 : 测试.txt 在程序运行的时候拿到的其实是'测试.txt.txt'
解决办法:
文件重命名删掉后缀或者在你的path后面再写一遍后缀
2.错误提示为:'utf-8' codec can't decode byte 0xb1 in position 2: invalid start byte
这是啥情况?
保存文件的时候不要CTRL+s
保存文件的时候不要CTRL+s
保存文件的时候不要CTRL+s
手动另存为保存 记得选编码方式 一般为utf-8 默认自动ANSI 所以你文件里有中文一类的当你open(path,mode='r'encoding='utf-8')
的时候是读不出来的。
3.错误提示为:[Errno 22] Invalid argument 这个就是转义一类的问题了 比如你的文件名以'a'开头 那路径'*\a'
他会把你的a解释成\x07 在ANSIIC里这是让系统发出提示音
再比如你的文件名是复制粘贴过来的 可能会出现一个隐含符\u202a 意思是从左往右读。
解决办法:
r'path' 或者在你被转移的那个\前再加一个\就是告诉程序这是个\不是转义符。
一般不会用到 import os然后path.dirname path.abspath之类的东西
我遇到这个问题时上网一搜都是这样的回答 妈的卵用没有