python windows和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")

用Python复制文件的9个方法

Python 中有许多"开盖即食"的模块(比如 os,subprocess 和 shutil)以支持文件 I/O 操作.在这篇文章中,你将会看到一些用 Python 实现文件复制的 ...

用Python复制文件的9个方法(转)

转自:https://zhuanlan.zhihu.com/p/35725217 用Python复制文件的9个方法 Python 中有许多“开盖即食”的模块(比如 os,subprocess 和 sh ...

用python复制文件夹

用python复制文件 1. 根据文件夹的名称复制 需要复制的文件夹编号文件中,每一行表示一个编号,如下所示: > cat id.txt 1 2 3 ... > 目标文件的目录结构树如下所 ...

Python编程软件的安装与使用——Windows、Linux和Mac

Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ 最近,有读者透露:Python软件如何安装?为什么自己安装的软件会有各种"奇怪"的问题?据此,本 ...

python 复制文件到其他路径

#!/usr/bin/env/python # -*- coding: utf-8 -*- # @Time : 2018/11/7 16:34 # @Author : ChenAdong # @Ema ...

Jmeter 添加CSV Data set config 文件的相对路径及编码在Windows和Linux下的兼容性(转)

简介: Jmeter实际上是不需要安装的,只需要有ApacheJMeter.jar.启动批处理文件(jmeter.bat或jmeter).配置文件(jmeter.properties.user.pro ...

python复制文件到文件夹中

目标:将一张图片复制到一个文件夹下 所有子文件中. import shutil import os #第一部分,准备工作,拼接出要存放的文件夹的路径 file = 'E:/测试/1.jpg' #cur ...

python Windows和Linux路径表示问题

Windows下路径是用‘\\’表示也可以使用'/',但是Linux下路径都是‘/’表示. 因为python是跨平台的,有时候程序迁移会出现错误. 解决办法1 可全部使用‘/’表示 解决办法2 我们可 ...

python 复制文件流程

例子代码: [root@master script]# vim copy_file.py #!/usr/bin/python # -*- coding:utf-8 -*- old_file_name ...

随机推荐

[LintCode] Paint Fence 粉刷篱笆

There is a fence with n posts, each post can be painted with one of the k colors.You have to paint a ...

Shell 语法之输入输出

Linux 使用文件描述符标识每个文件对象.文件描述符是一个非负整数,可以唯一地标识会话中打开的文件.每个进程中最多可以有9个打开文件的描述符. Linux 标准文件描述符 文件描述符 缩写 描述 0 ...

【动态规划】Vijos P1104 采药(NOIP2005普及组第三题)

题目链接: https://vijos.org/p/1104 题目大意: T时间,n个物品,每个耗时ti,可获得收益ci,求最大收益. 题目思路: [动态规划] 01背包裸题.一维二维都过了,放个一维 ...

curl get请求添加header头信息

function get($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_HTTPGET, true); curl_setopt($ch, CU ...

雷林鹏分享:jQuery EasyUI 数据网格 - 合并单元格

jQuery EasyUI 数据网格 - 合并单元格 数据网格(datagrid)经常需要合并一些单元格.本教程将向您展示如何在数据网格(datagrid)中合并单元格. 为了合并数据网格(datag ...

SED 学习笔记

1. Sed简介   sed是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成 ...

C链表

结构指针的应用,链表处理 1,链表的概念 链表是将若干数据项按一定规则连接起来的[数据类型]表,链表中的每一个数据称为一个节点,既链表是由称为节点的元素组成的,节点多少根据需要确定. 链表连接规则: ...

Web前端行业的了解

即将从事Web前端的工作的 先对即将从事的行业有个了解. Web前端发展史: 第一个网页诞生于90年代初,早期的网页除了一些小图片和毫无布局可言的标题段落,其全由文字构成.然而随着时代的进步,互联网的 ...

python 面向对象六 类属性和实例属性

一.实例属性 Python是动态语言,根据类创建的实例可以任意绑定属性. >>> class Student(object): ... def __init__(self, name ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值