使用原始字符串运行子进程

2024-06-16 10:00:02 发布

您现在位置:Python中文网/ 问答频道 /正文

这有点奇怪,但是我正在运行一个叫做scrapbox的程序,scrapbox有一个自动插件,它可以创建一个文件来自动运行其中的一些东西。为了从cmd运行自动机,我将cd放入程序目录,然后键入:

Scrapebox.exe "automator:1.sbaf"

它将首先启动scrapbox程序,一旦打开,它将立即运行自动文件。在

这是一个更大谜题中的一小部分。我试图在一个更大的Python脚本中调用它。在

^{pr2}$

当我像上面那样运行它时,它会工作并打开scrapbox。但是,我真正需要做的是:

subprocess.call(["Scrapebox.exe "automator:1.sbaf""])

当我这样做时,它会抛出一个语法错误。那么我怎么才能把它作为一个原始字符串输入到cmd中呢?在


Tags: 文件程序目录脚本cmd插件键入自动机
1条回答
网友
1楼 · 发布于 2024-06-16 10:00:02

如果要在字符串中嵌入双引号,可以使用多种方法之一。另外,要传递所有参数的单个字符串,请不要以列表形式传递[]

subprocess.call("Scrapebox.exe \"automator:1.sbaf\"")
subprocess.call('Scrapebox.exe "automator:1.sbaf"')

Python可以在字符串前后使用单引号或双引号。您还可以用三重引号将字符串括起来(在开始和结束处有三个单引号或双引号),这也允许换行,但这里不需要它。在

如果传递参数列表,则每个参数都应该是该列表的一个元素:

^{pr2}$

相关问题 更多 >