向python字符串添加转义字符

向python字符串添加转义字符,python,Python,我有一个要传递给程序或bash脚本的文件名。例如,如果它是my car's picture.jpg,我必须将其更改为my\car's picture.jpg,以将其传递给操作系统,如show my\car's picture.jpg。是否有一个函数可以自动执行反斜杠?您应该使用该模块从Python调用shell脚本。那你就不必担心自己会逃避 import subprocess subprocess.call(['script_name', "my car's picture.jpg"]) su

我有一个要传递给程序或bash脚本的文件名。例如,如果它是
my car's picture.jpg
,我必须将其更改为
my\car's picture.jpg
,以将其传递给操作系统,如
show my\car's picture.jpg
。是否有一个函数可以自动执行反斜杠?

您应该使用该模块从Python调用shell脚本。那你就不必担心自己会逃避

import subprocess
subprocess.call(['script_name', "my car's picture.jpg"])

subprocess.call()
将为您正确转义所有内容。如果您需要读取shell脚本的输出,请使用
子流程。请检查\u output()

您只需按原样传递并使用,
os.system
已折旧

c = check_output(["file","/home/padraic/Pictures/my cars' picture.png"])
print(c)
b"/home/padraic/Pictures/my cars' picture.png: PNG image data, 1366 x 768, 8-bit/color RGB, non-interlaced\n"

要调用脚本,请使用
check\u call
,如果您想使用管道,可以使用
Popen
,上面链接的文档中有很多示例,包括。

我可以提供一些不完整的建议,这些建议可能对您有所帮助

使用
“my car's picture.jpg”
——双引号替换单引号

在UNIX文件系统中使用空格只会产生令人头痛的问题。您可以在双引号内传递文件名

os.system('cp "my car\'s picture" myCarPicture.jpg')
如果在Windows系统中使用带反斜杠的文件名,请使用原始字符串


r“C:\Foo\bah\baz.jpg”

您使用的是什么版本的Python?没有一个会像您所希望的那样添加反斜杠,但这两个都会使字符串安全地传递到
os.system
。我认为已贬值的字符串实际上是deprecated@BhargavRao是的,同时观看两个屏幕可能对我的语法不好。您可以通过多线程处理双眼在不同的屏幕上工作:P@BhargavRao,我想是时候结束了,把注意力集中在角落里的大屏幕上;)