python复制文件,路径不存在问题(Windows和linux路径分隔符不统一)

问题:
python脚本涉及到复制文件,而我们需要兼容Windows、linux和mac环境
(Windows和linux的路径分隔符不同:通过os.path.sep查看分隔符)
 
如果用【路径名+os.path.sep+文件名】的形式拼接复制的源和目标路径,windows下会提示路径有问题(例如D:\test\test.py)
 
想到解决方法,使用replace把双斜杠转换为单斜杠
使用replace(“\”,”\”)的变量内容还是双斜杠,只有print出来才是单斜杠,所以并没有什么用
 
解决方法:
最终使用python的【shutil.copy(源文件,目标文件)】方法来复制。
(因为shutil.copy()支持Windows和linux上都使用/opt/scf的反斜杠路径格式)
所以我不用去管操作系统是Windows的额还是linux的
 
备注:
如果你和我一样使用了os.getcwd()获得当前目录,记得把\转换为/(否则Windows下会有问题)
 
代码示例如下:
import os,shutil
rootpath=str(os.getcwd()).replace("\", "/")
shutil.copy(rootpath + “test1.py",“/opst/scf/test2.py")
原文地址:https://www.cnblogs.com/meitian/p/6375058.html