Python2.7设置一个给定变量,将一个反斜杠替换为两个反斜杠

Python2.7设置一个给定变量,将一个反斜杠替换为两个反斜杠,python,windows,python-2.7,Python,Windows,Python 2.7,我对编程和编写我的第一个python脚本仍然是新手 我试图让python脚本以某种方式执行,因此用户只需键入以下内容: script.py \\server\location 而不是执行这个 script.py \\\\server\\location 以下是我到目前为止的情况: import sys buildpath = sys.argv[1] buildpath.replace(r'\\', r'\\\\') print buildpath 非常感谢您提供的任何帮助:)调用.rep

我对编程和编写我的第一个python脚本仍然是新手

我试图让python脚本以某种方式执行,因此用户只需键入以下内容:

script.py \\server\location
而不是执行这个

script.py \\\\server\\location
以下是我到目前为止的情况:

import sys

buildpath = sys.argv[1]
buildpath.replace(r'\\', r'\\\\')
print buildpath

非常感谢您提供的任何帮助:)

调用
.replace()
后,您没有捕获已更改的
构建路径
变量
.replace()
返回新字符串;字符串是不可变的,因此
.replace()
不能就地更改
构建路径

接下来,您将使用原始字符串定义双斜杠,但希望替换单斜杠。从
r'\\'
r'\\\'
中删除
r
;无论如何,不能将单个斜杠用作原始字符串文字中的最后一个字符

我想你应该这样做:

buildpath = sys.argv[1]
buildpath = buildpath.replace('\\', '\\\\')
print buildpath

调用
.replace()
后,您没有捕获已更改的
buildpath
变量
.replace()
返回新字符串;字符串是不可变的,因此
.replace()
不能就地更改
构建路径

接下来,您将使用原始字符串定义双斜杠,但希望替换单斜杠。从
r'\\'
r'\\\'
中删除
r
;无论如何,不能将单个斜杠用作原始字符串文字中的最后一个字符

我想你应该这样做:

buildpath = sys.argv[1]
buildpath = buildpath.replace('\\', '\\\\')
print buildpath

啊,好一点,有道理。但是现在它正在打印这个
\\\\stuff\morestuff
,我需要它来打印这个
\\\\stuff\\morestuff
。有什么建议吗?啊,我明白了,我只需要在没有
raw
标签的情况下更改行。这是有效的-
buildpath=buildpath.replace(“\\”,“\\\\”)
。5分钟后我会给你打分。谢谢你的快速回复:)@FiddleFreak:我认为你的评论和我的编辑很好地吻合啊,好一点,有道理。但是现在它正在打印这个
\\\\stuff\morestuff
,我需要它来打印这个
\\\\stuff\\morestuff
。有什么建议吗?啊,我明白了,我只需要在没有
raw
标签的情况下更改行。这是有效的-
buildpath=buildpath.replace(“\\”,“\\\\”)
。5分钟后我会给你打分。谢谢你的快速回复:)@FiddleFreak:我认为你的评论和我的编辑很好地吻合