歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Windows和Linux下Python復制文件提示路徑不存在解決

Windows和Linux下Python復制文件提示路徑不存在解決

日期:2017/2/28 13:43:40   编辑:Linux教程

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")

Copyright © Linux教程網 All Rights Reserved