关于linux下读取文件路径出错的问题(win10 & docker)

Q:最近在win10的docker拉的一个linux上用python脚本调用opencv处理图片时,按行读取一个txt中的图片路径(每行一个路径),结果将每行的字符串传进去,读取图片时发现读取的是none,但是如果手动赋值一个图片的路径字符串可以读取到。ps:读取每行已经做了replace('\n', '')和strip(),在mac上的linux读取不是none。

A:将txt第一行replace('\n', '')和strip()后写出到1.txt,手动把这个字符串写出到2.txt,然后我发现:

关于linux下读取文件路径出错的问题(win10 & docker)关于linux下读取文件路径出错的问题(win10 & docker)

一个64,要给一个63,什么鬼?不是已经replace('\n', '')和strip()了吗?我用UltraEdit打开,发现:

1.txt相比2.txt:少个/(因为用了join),且多了个0D0A

原来是mac和win的差异,win下应该用replace('\r\n', '')而不是replace('\n', '')。

坑死我了关于linux下读取文件路径出错的问题(win10 & docker)