您的位置:首页 > 编程语言 > Python开发

python 不同OS上的路径转换

2017-07-31 22:58 232 查看
http://www.cnblogs.com/meitian/p/6375058.html

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")
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: