Python 如何使用subprocess.Popen将变量传递到字符串中

Python 如何使用subprocess.Popen将变量传递到字符串中,python,Python,我正在尝试编写一个脚本,搜索我的网络卷并返回路径和文件列表。然后,我希望在运行windows资源管理器搜索的子流程中使用该列表,允许用户将文件从搜索浏览器拖放到任何位置。挂起的地方是将变量(list)传递到子流程字符串中 例如: foo = 'returned list' subprocess.Popen(f'explorer /root,"search-ms:query={foo}"') 该字符串是windows资源管理器搜索参数的一部分 search-ms:parameter=value[

我正在尝试编写一个脚本,搜索我的网络卷并返回路径和文件列表。然后,我希望在运行windows资源管理器搜索的子流程中使用该列表,允许用户将文件从搜索浏览器拖放到任何位置。挂起的地方是将变量(list)传递到子流程字符串中

例如:

foo = 'returned list'
subprocess.Popen(f'explorer /root,"search-ms:query={foo}"')
该字符串是windows资源管理器搜索参数的一部分

search-ms:parameter=value[&parameter=value]&
从MSDN开始使用参数值参数

如果我使用特定参数运行子流程字符串,例如genericFileName.fileExt,并且文件存在:

子流程启动资源管理器并显示文件

当我尝试使用变量时,子流程会打开资源管理器,但不会返回搜索结果。我希望能够在子流程字符串中使用变量

所以

{foo}是子流程字符串中的变量

非常感谢您的帮助

再次感谢你

想明白了:

import subprocess
filePath = 'someFile.ext'
localPath = r'C:\someDirectory'
cmd = r'explorer /root,"search-ms:query=%s&crumb=folder:%s&"'
subprocess.Popen(cmd % (filePath, local_path))
我想出来了:

import subprocess
filePath = 'someFile.ext'
localPath = r'C:\someDirectory'
cmd = r'explorer /root,"search-ms:query=%s&crumb=folder:%s&"'
subprocess.Popen(cmd % (filePath, local_path))
可能的重复可能的重复
import subprocess
filePath = 'someFile.ext'
localPath = r'C:\someDirectory'
cmd = r'explorer /root,"search-ms:query=%s&crumb=folder:%s&"'
subprocess.Popen(cmd % (filePath, local_path))